一、用户ip地址列表的几种方式
liangzeyu@'10.0.0.11'
liangzeyu@'10.0.0.&'
liangzeyu@'%'
liangzeyu@'10.0.0.0/255.255.254.0'
liangzeyu@'localhost'
二、查看用户权限
mysql> select user,host,authentication_string,plugin from mysql.user;
+---------+-----------+-------------------------------------------+-----------------------+
| user | host | authentication_string | plugin |
+---------+-----------+-------------------------------------------+-----------------------+
| root | localhost | *537EDAC2CD63363F41261FB8A36E69FE558B3BA5 | mysql_native_password |
| root | liangzeyu | *537EDAC2CD63363F41261FB8A36E69FE558B3BA5 | mysql_native_password |
| root | 127.0.0.1 | *537EDAC2CD63363F41261FB8A36E69FE558B3BA5 | mysql_native_password |
| root | ::1 | *537EDAC2CD63363F41261FB8A36E69FE558B3BA5 | mysql_native_password |
| | localhost | NULL | mysql_native_password |
| | liangzeyu | NULL | mysql_native_password |
| qianbao | localhost | | mysql_native_password |
| qianbao | 127.0.0.1 | | mysql_native_password |
+---------+-----------+-------------------------------------------+-----------------------+
user = 用户 host=可以访问的地址 authentication_string=密码 plugin=密码机密的插件
三、用户创建、修改、锁定
mysql 8 密码加密插件是 caching_sha2_password
mysql 5.7以下版本为 mysql_native_password
1、创建用户
mysql> create user liangzeyu@'localhost' identified by '123'; ##不允许远程登录。
mysql> create user liangzeyu@'10.0.0.%' identified by '123'; ##至允许远程登录,不允许本地登录。如果需要本地和远程都登录,就把上面的的命令一起执行下。
mysql> create user oldxu@'10.0.0.%' identified with mysql_native_password by '123'; #指定加密插件进行加密。
如果想要永久默认使用5.7加密插件进行创建用户,修改/etc/my.cnf
default_authentication_plugin=mysql_native_password
添加以上规则
2、修改用户
修改用户密码使用5.7加密插件
alter user liangzeyu@'localhost' identified with mysql_native_password by '123';
锁定用户
alter user liangzeyu@'localhost' account lock;
解锁用户
alter user liangzeyu@'localhost' account unlock;
3、删除用户
生产环境不建议直接删除,先锁定一个月或者2周。无问题之后在删除。
drop user liangzeyu@'localhost';
如果公司有需要对用户权限进行备份,可以使用pt-show-grants工具进行备份。
四、权限管理
查看所有权限及解释信息
mysql> show privileges;
重点:ALL权限不包括grant option的所有权限。
重点:mysql8.0之后,grant只能做授权,必须先建立用户在进行授权。
1、管理员授权
mysql> grant all on *.* to liangzeyu@'10.0.0.%';
查看
mysql> select * from mysql.user \G;
就会查看到权限都是Y,普通用户都是N或者用这个查看
show grants for liangzeyu@'10.0.0.%';
2、生产用户创建
创建qbuser用户能够对qianbao库进行生产业务操作
创建
create user qbuser@'10.0.0.%' identified by '123';
授权
grant select,update,delete,insert on qianbao.* to qbuser@'10.0.0.%';
查看
show grants for qbuser@'10.0.0.%';
3、回收用户
回收qianbao库下的所有表的权限
revoke delete on wordpress.* from qb_user@'10.0.0.%';
有问题请加博主微信进行沟通!
全部评论