The USER_ATTRIBUTES table (available
      as of MySQL 8.0.21) provides information about user comments and
      user attributes. It takes its values from the
      mysql.user system table.
    
      The USER_ATTRIBUTES table has these
      columns:
- USER- The user name portion of the account to which the - ATTRIBUTEcolumn value applies.
- HOST- The host name portion of the account to which the - ATTRIBUTEcolumn value applies.
- ATTRIBUTE- The user comment, user attribute, or both belonging to the account specified by the - USERand- HOSTcolumns. The value is in JSON object notation. Attributes are shown exactly as set using- CREATE USERand- ALTER USERstatements with- ATTRIBUTEor- COMMENToptions. A comment is shown as a key-value pair having- commentas the key. For additional information and examples, see CREATE USER Comment and Attribute Options.
Notes
- USER_ATTRIBUTESis a nonstandard- INFORMATION_SCHEMAtable.
- To obtain only the user comment for a given user as an unquoted string, you can employ a query such as this one: - mysql> SELECT ATTRIBUTE->>"$.comment" AS Comment -> FROM INFORMATION_SCHEMA.USER_ATTRIBUTES -> WHERE USER='bill' AND HOST='localhost'; +-----------+ | Comment | +-----------+ | A comment | +-----------+- Similarly, you can obtain the unquoted value for a given user attribute using its key. 
- Prior to MySQL 8.0.22, - USER_ATTRIBUTEScontents are accessible by anyone. As of MySQL 8.0.22,- USER_ATTRIBUTEScontents are accessible as follows:- All rows are accessible if: - The current thread is a replica thread. 
- The access control system has not been initialized (for example, the server was started with the - --skip-grant-tablesoption).
- The currently authenticated account has the - UPDATEor- SELECTprivilege for the- mysql.usersystem table.
- The currently authenticated account has the - CREATE USERand- SYSTEM_USERprivileges.
 
- Otherwise, the currently authenticated account can see the row for that account. Additionally, if the account has the - CREATE USERprivilege but not the- SYSTEM_USERprivilege, it can see rows for all other accounts that do not have the- SYSTEM_USERprivilege.
 
For more information about specifying account comments and attributes, see CREATE USER Statement.