欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

MySQL-创建用户和设置权限

程序员文章站 2022-06-03 20:44:43
...

1.创建用户和设置权限:CREATE USER和GRANT命令

GRANT 和REVOKE命令分别授予和取消MySQL用户的权限

  • CREATE USER 命令用来创建用户:
CREATE USER user_info
IDENTIFIED BY [PASSWORD] password |IDENTIFIED WITH [auth_plugin] [AS auth_string]

方括号中子句是可选的。user_info->>[email protected] 其中hostname可选,而user_name是MySQL中登录的用户名

  • GRANT 用来赋予用户权限。如果用户账号不存在,GRANT命令也将创建该用户
GRANT privileges [columns]
ON item
TO user_info 
[IDENTIFIED BY password]|IDENTIFIED WITH [auth_plugin] [AS auth_string]]
[REQUIRE ssl_options]
[WITH [GRANT OPTION| limit_options]]
  • REVOKE命令:

REVOKE命令与GRANT相反,它用来从一个用户收回权限,在语法上与GRANT十分相似

REVOKE privileges [{columns}]
ON item
FROM user_name

如果已经给出了WITH GRANT OPTION 子句,可以按照啊如下方式撤销权限

REVOKE ALL PRIVILEGES,GRANT OPTION 
FROM user_name

2.使用GRANT 和REVOKE实例

要创建一个管理员,可以输入如下命令

grant all
on *.*
to 'fred' identified by 'mnb123'
with grant option;

以上命令授予了用户fred,密码未mnb123的用户使用所有数据库的所有权限以及云溪向其他人授予这些权限

如果不希望用户在系统中存在,可以按以下方式撤销授权

revoke all privilegess,grant option
from 'fred';

现在,可以按以下方式是创建一个没有任何权限的用户

grant usage 
on book.*
to 'sally'@'localhost' identified by 'magic123'

然后可以按照以下方式授予适当权限

grant select,insert,update,delete,index,alter,create,drop
on books.*
to 'sally'@'localhost';

注意:要授予权限,并不需要指定密码

 

如果认为sally的权限过高,可以按照以下方式撤销所有权限

revoke all
on books.*
from 'sally'@'localhost';

现在,对revokr和grant命令是否有了初步了解了?

相关标签: mysql 权限