USER_ATTRIBUTES
表提供有关用户评论和用户属性的信息。它从 mysql.user
系统表中获取其值。
USER_ATTRIBUTES
表包含以下列
USER
帐户的用户名部分,
ATTRIBUTE
列值适用于该帐户。HOST
帐户的主机名部分,
ATTRIBUTE
列值适用于该帐户。ATTRIBUTE
属于由
USER
和HOST
列指定的帐户的用户评论、用户属性或两者。该值采用 JSON 对象表示法。属性将按使用CREATE USER
和ALTER USER
语句(带有ATTRIBUTE
或COMMENT
选项)设置的完全相同方式显示。评论将显示为一个键值对,其中comment
是键。有关其他信息和示例,请参阅 CREATE USER 评论和属性选项。
注释
USER_ATTRIBUTES
是一个非标准INFORMATION_SCHEMA
表。要仅获取给定用户的用户评论作为未引用的字符串,您可以使用以下查询
mysql> SELECT ATTRIBUTE->>"$.comment" AS Comment -> FROM INFORMATION_SCHEMA.USER_ATTRIBUTES -> WHERE USER='bill' AND HOST='localhost'; +-----------+ | Comment | +-----------+ | A comment | +-----------+
类似地,您可以使用其键来获取给定用户属性的未引用值。
USER_ATTRIBUTES
内容可以通过以下方式访问如果满足以下条件,则可以访问所有行
当前线程是副本线程。
访问控制系统尚未初始化(例如,服务器以
--skip-grant-tables
选项启动)。当前经过身份验证的帐户具有
CREATE USER
和SYSTEM_USER
权限。
否则,当前经过身份验证的帐户可以查看该帐户的行。此外,如果该帐户具有
CREATE USER
权限,但不具有SYSTEM_USER
权限,则它可以查看所有其他不具有SYSTEM_USER
权限的帐户的行。
有关指定帐户评论和属性的更多信息,请参阅 第 15.7.1.3 节,“CREATE USER 语句”。