mysql创建账号和分配取消权限

虽然网上资料很多,但自己每次都要查有的麻烦,这里自己记录下。

1、没账号时创建账号:

create user '用户名'@'%' identified by '密码';

%表示不限制,也可以写要限制的具体ip地址。

2、分配权限:

grant all on 数据库名.表名 to '用户名'@'%';

对于有的文章说后面要加 identified by '密码',但新版本提示报错:Using GRANT statement to modify existing user‘s properties other than privileges is deprecated,所以新版本不应该加,要注意版本区别。

# 旧版本可能要加 identified by '密码',但新版本不能加
grant all privileges on 数据库名.表名 to '用户名'@'%' identified by '密码';

其中all表示所有权限,也可以设置具体权限(select,drop,delete,update等,多个权限用英文逗号,间隔)。有的版本介绍要加privileges关键字,本人5.7以上版本未加执行正常,低版本注意是否必须。

3、有的文章说如果不生效,需要执行flush privileges,目前5.7以上版本发现不需要,低版本注意是否需要执行。

flush privileges;

4、查看账号所有权限。

show grants for '用户名'@'主机名'
# 例:show grants for '用户名'@'%'

 


 

下面为取消权限和删除账号:

1、取消权限: 

revoke all on 数据库名.表名 from '用户名'@'%';

注意,取消权限是from关键字,且后缀必须加分号;

2、删除用户:

drop user '用户名'@'%';

 

建议:删除用户前先取消权限再删除账号。

 

posted @ 2022-10-24 20:25  一 定 会 去 旅 行  阅读(330)  评论(0编辑  收藏  举报