Mysql8创建用户以及赋权操作

  • Post author:
  • Post category:mysql




Mysql8创建用户以及赋权操作



1、进入mysql

mysql -uroot -p



2、创建用户

create user 'testuser1'@'%' identified by '123456';

这里表示创建一个不限制ip登录的用户 testuser1

该用户的密码是 123456

%代表不限制ip登录



刷新权限,每一次权限更改后都刷新一下
flush privileges;


在本地新建连接都可以登录该用户了

登录用户testuser1



这个时候你打开会发现只有information_schema一个数据库

在这里插入图片描述



3、给用户赋权

grant all privileges on test_grant.* to 'testuser1'@'%' with grant option;

这里表示给用户testuser1赋予数据库test_grant(这是我之前创建好的数据库)中所有表的所有权限

with grant option表示该用户可以给其他用户赋权,但是不能超过该用户的权限



此时查看,用户testuser1多了一个test_grant数据库

在这里插入图片描述

这里的all privileges 可换成select,insert,update,delete,drop,create等



4、查看用户权限

show grants for 'testuser1'@'%';

查看用户testuser1权限



5、撤销用户权限

revoke all privileges on test_grant.* from 'testuser1'@'%';

这里表示撤销用户testuser1对数据库test_grant的所有操作权限

注意:这里如果这么写,你会发现你打开还是有数据库test_grant(不过你无法操作该数据库了),这是因为我之前创建的时候用到了with grant option,因为all privileges 是除了with grant option的所有权限



执行如下语句 回收用户所有权限即可
revoke all privileges,grant option from 'testuser1'@'%';



6、删除用户

drop user 'testuser1'@'%';



7、查询所有用户及其权限

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

也可以这样

SELECT User, Host FROM mysql.user;

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦



版权声明:本文为m0_54849873原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。