主题
GRANT 与 REVOKE
1. 授权(GRANT)
GRANT 用于赋予用户访问数据库及操作权限,语法如下:
sql
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机';示例:授予用户 alice 在 testdb 数据库所有表的查询和插入权限:
sql
GRANT SELECT, INSERT ON testdb.* TO 'alice'@'localhost';赋予所有权限:
sql
GRANT ALL PRIVILEGES ON testdb.* TO 'alice'@'localhost';执行授权后,通常需要刷新权限:
sql
FLUSH PRIVILEGES;2. 撤销权限(REVOKE)
REVOKE 用于收回已授权的权限,语法如下:
sql
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机';示例:撤销用户 alice 在 testdb 数据库的插入权限:
sql
REVOKE INSERT ON testdb.* FROM 'alice'@'localhost';3. 查看用户权限
sql
SHOW GRANTS FOR '用户名'@'主机';示例:
sql
SHOW GRANTS FOR 'alice'@'localhost';合理使用 GRANT 和 REVOKE 命令,可有效控制用户权限,保障数据库安全和稳定运行。