MySQL 8.4 Release Notes
28.3.45 INFORMATION_SCHEMA USER_ATTRIBUTES 表
USER_ATTRIBUTES 表提供了用户评论和用户属性信息。它从mysql.user
系统表中获取值。
USER_ATTRIBUTES 表具有以下列:
-
USER
该
ATTRIBUTE
列值适用的帐户用户名部分。 -
HOST
该
ATTRIBUTE
列值适用的帐户主机名部分。 -
ATTRIBUTE
指定账户的用户评论、用户属性或二者,通过
USER
和HOST
列指定。值以JSON对象表示符形式出现。属性将按照使用CREATE USER
和ALTER USER
语句中的ATTRIBUTE
或COMMENT
选项设置的方式显示。评论将以键值对形式出现,其中键为comment
。欲了解更多信息和示例,请参阅CREATE USER Comment and Attribute Options.
-
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 Statement”。