MySQL用户权限配置包括赋予权限和撤销权限

MySQL 赋予用户权限命令的简单格式可概括为:

grant 权限 on 数据库对象 to 用户 IDENTIFIED BY 密码;

MySQL 撤销用户权限

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可,格式为:

revoke 权限 on 数据库对象 from 用户

MySQL授权的用户,也可以将这些权限授权给其他用户

授权命令尾部加上 with grant option,格式为:

grant 权限 on 数据库对象 to 用户 IDENTIFIED BY 密码 with grant option;

MySQL 赋予用户权限常用例子

1
2
3
4
5
GRANT SELECT,INSERT,UPDATE,DELETE,
CREATE,DROP,ALTER,
INDEX,TRIGGER,ALTER ROUTINE,CREATE ROUTINE,EXECUTE,
EVENT,CREATE VIEW,SHOW VIEW,REFERENCES 
on db_xxx.* TO usera@'%' IDENTIFIED BY 'passwd1';

MySQL 用户权限分类说明

数据增删改查权限: SELECT,INSERT,UPDATE,DELETE

表创建删除修改权限:CREATE,DROP,ALTER

索引触发器存储过程权限:INDEX,TRIGGER,ALTER ROUTINE,CREATE ROUTINE,EXECUTE

事件的创建修改删除权限:EVENT

视图权限:CREATE VIEW,SHOW VIEW

操作外键权限:REFERENCES

创建临时表权限:CREATE TEMPORARY TABLES

普通DBA权限:all privileges

高级DBA权限:all

MySQL赋予用户所有权限命令

1
grant all on *.* to dba1@'localhost'

注意:

grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。