This is a read-only copy of the MariaDB Knowledgebase generated on 2024-12-22. For the latest, interactive version please visit https://mariadb.com/kb/.

REVOKE

权限

语法

REVOKE 
    priv_type [(column_list)]
      [, priv_type [(column_list)]] ...
    ON [object_type] priv_level
    FROM user [, user] ...

REVOKE ALL PRIVILEGES, GRANT OPTION
    FROM user [, user] ...

描述

REVOKE 语句使系统管理员能够从 MariaDB 账户中撤销特权(或角色 - 请参阅下面的 章节)。每个帐户的命名方式与 GRANT 语句相同;例如,'jeffrey'@'localhost'。如果只指定帐户名称的用户名部分,则使用主机名部分 '%'。有关特权存在的级别、允许的 priv_typepriv_level 值以及指定用户和密码的语法,请参见 GRANT

要使用第一个 REVOKE 语法,您必须拥有 GRANT OPTION 特权,并且必须拥有要撤销的特权。

要撤销所有权限,请使用第二个语法,该语法删除指定用户或用户组的所有全局、数据库、表、列和例程权限:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...

要使用此 REVOKE 语法,您必须具有全局 CREATE USER 特权或 mysql 数据库的 UPDATE 特权。请参见 GRANT

示例

REVOKE SUPER ON *.* FROM 'alexander'@'localhost';

角色

# 语法

REVOKE role  [, role ...]
    FROM grantee [, grantee2 ... ]

REVOKE ADMIN OPTION FOR role FROM grantee [, grantee2]

# 描述 REVOKE 还用于从分配给用户或其他角色的角色中删除一个 role。如果先前将角色设置为 default role,则 REVOKE 不会从 mysql.user 表中删除默认角色的记录。如果随后再次授予该角色,则它将再次成为用户的默认角色。使用 SET DEFAULT ROLE NONE 显式地删除此。

MariaDB 10.1.13 之前,不允许在 prepared statements 中使用 REVOKE role 语句。

# 示例

REVOKE journalist FROM hulda
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.