mysql用户管理

1174人浏览 / 0人评论

一、用户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.%';

 

全部评论