Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  The INFORMATION_SCHEMA USER_ATTRIBUTES Table

28.3.45 INFORMATION_SCHEMA USER_ATTRIBUTES 表

USER_ATTRIBUTES 表提供了用户评论和用户属性信息。它从mysql.user系统表中获取值。

USER_ATTRIBUTES 表具有以下列:

  • USER

    ATTRIBUTE列值适用的帐户用户名部分。

  • HOST

    ATTRIBUTE列值适用的帐户主机名部分。

  • ATTRIBUTE

    指定账户的用户评论、用户属性或二者,通过USERHOST列指定。值以JSON对象表示符形式出现。属性将按照使用CREATE USERALTER USER语句中的ATTRIBUTECOMMENT选项设置的方式显示。评论将以键值对形式出现,其中键为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选项启动)。

      • 当前身份验证的账户拥有UPDATESELECT权限,以访问mysql.user系统表。

      • 当前身份验证的账户拥有CREATE USERSYSTEM_USER权限。

    • 否则,当前身份验证的账户可以查看该账户的行。另外,如果账户拥有CREATE USER权限,但不拥有SYSTEM_USER权限,它可以查看所有其他账户,不拥有SYSTEM_USER权限的行。

关于指定账户注释和属性的更多信息,请见第15.7.1.3节,“CREATE USER Statement”