最后更新于

MySQL用户授权及撤销权限命令


MySQL用户权限配置包括赋予权限和撤销权限两个主要操作。

✅ 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赋予用户权限常用例子

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赋予用户所有权限命令

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

⚠️ 注意事项

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