千家信息网

Mysql8怎么创建用户及赋权

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,这篇文章主要讲解了"Mysql8怎么创建用户及赋权",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Mysql8怎么创建用户及赋权"吧!1、进入mysql
千家信息网最后更新 2024年11月28日Mysql8怎么创建用户及赋权

这篇文章主要讲解了"Mysql8怎么创建用户及赋权",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Mysql8怎么创建用户及赋权"吧!

1、进入mysql

mysql -uroot -p

2、创建用户

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

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

该用户的密码是 123456

%代表不限制ip登录

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

flush privileges;

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

这个时候你打开会发现只有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'@'%';

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;

附:查看用户权限

show grants for '#userName'@'#host';

#userName 代表用户名

#host 代表访问权限,如下

  • %代表通配所有host地址权限(可远程访问)

  • localhost为本地权限(不可远程访问)

  • 指定特殊Ip访问权限 如10.138.106.102

????本狗要查看的是testUser

show grants for 'testUser'@'%';

感谢各位的阅读,以上就是"Mysql8怎么创建用户及赋权"的内容了,经过本文的学习后,相信大家对Mysql8怎么创建用户及赋权这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0