教程 mariadb tutorial

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 命令,可有效控制用户权限,保障数据库安全和稳定运行。