MySQL 8.0.18的创建用户权限分配操作

创建用户

-- webroot:用户名称

-- %:是通配符指的是任意IP,这个位置也可以指定特定的ip,或者localhost代表本机才可以登录

create user 'webroot'@'localhost' identified by '123456';

create user 'webroot'@'ip' identified by '123456';

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

--刷新命令
flush privileges;

操作可能会遇到的异常:

创建用户成功后可以在mysql 库的user 表中查看到

分配权限

超级管理员权限 

grant all on *.* to 'webroot'@'%'; 

给用户指定数据库demo_ssm ,* 代表所有table也可指定某张表, all 表示所有权限

 
grant all privileges on demo_ssm.* to 'webroot'@'%' with grant option;

赋值用户只要查看权限

grant select on demo_ssm.* to webroot@'%';

常见的权限有select,insert,update,delete,create,drop,分别是查、增、改、删、创建、清空,前四种是对表数据的操作,后两种是对表的操作。

grant select,insert,update,delete,create,drop on demo_ssm.* to webroot@'%';

撤销用户权限:

REVOKE ALL ON demo_ssm.* FROM webroot@'%';

删除用户

drop user 'webroot'@'%' ;

修改用户密码:

ALTER USER 'webroot'@'%' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '654321';

如果执行成功无效,可执行刷新命令

flush privileges;

查看用户权限

show grants for 'webroot'@%;

show grants for webroot;

用户分配授权的权限

# 查看用户授权的权限没有打开Grant_priv
SELECT host,user,Grant_priv,Super_priv FROM mysql.user; 

#赋予权限
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;

移除删库权限

revoke drop on 库.* from '用户'@'%';
flush privileges;

授予用户在某个数据库上执行所有存储过程的权限

GRANT EXECUTE ON `test_db`.*  TO 'testuser'@'%';

授予某个用户执行某个存储过程的权限

GRANT EXECUTE  ON  PROCEDURE `procedure_name` TO 'testuser'@'%'

随记。。。。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值