用户管理及备份

版权声明:竹永康 https://blog.csdn.net/qq_41964425/article/details/82749660

我们知道我们的最高权限管理者是root用户,它拥有着最高的权限,包括select、update、delete、grant等操作。一般在公司里DBA工程师会创建一个用户和密码,让你去连接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限)。

1. 对新用户增删改

# 创建用户
create user 'zyk'@'192.168.1.2' identified by '123';    # 指定ip为192.168.1.2的zyk用户登陆
create user 'zyk'@'192.168.%.%' identified by '123';    # 指定ip为192.168.开头的zyk用户登陆
create user 'zyk'@'%' identified by '123';    # 指定任何ip的zyk用户登陆

# 删除用户
drop user '用户名'@'可访问途径';

# 修改用户
rename user '用户名'@'可访问路径' to '新用户名'@'可访问路径';

# 修改密码
set password for '用户名'@'可访问路径'=Password('新密码');

2. 对当前的用户授权

# 查看权限
show grants for '用户名'@'IP地址';

# 授权zyk用户仅对db下的tb文件有查询、插入和更新的操作
grant select, insert, update on db.tb to 'zyk'@'%';

# 授权所有的权限(不包括grant命令,此命令只有root用户拥有)
grant all privileges on db.tb to 'zyk'@'%';

grant all privileges on db.* to 'zyk'@'%';    # 此时zyk用户可对db库下的所有文件执行任何操作
grant all privileges on *.* to 'zyk'@'%';    # 此时zyk用户可对所有数据库及文件执行任何操作

# 取消授权
revoke all on db.tb from 'zyk'@'%';    # 取消zyk用户对db下的tb文件的所有权限
revoke all on db.* from 'zyk'@'%';    # 取消来自远程服务器的zyk用户对数据库db下所有表的所有权限
revoke all privileges on *.* from 'zyk'@'%';    # 取消来自远程服务器的zyk用户对所有数据库及表的权限

3. 备份

# 备份:数据表结构 + 数据
mysqldump -u root db > db.sql -p

# 备份:数据表结构
mysqldump -u root -d db > db.sql -p


# 导入
create database new_db;    # 先创建一个新的数据库:new_db
mysqldump -u root -d new_db < db.sql -p    # 再将已有的数据库文件导入到new_db数据库中


猜你喜欢

转载自blog.csdn.net/qq_41964425/article/details/82749660
今日推荐