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_ATTRIBUTES  contents are accessible by anyone. As of MySQL 8.0.22, USER_ATTRIBUTES  contents 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-tables  option). 

•The currently authenticated account has the UPDATE  or SELECT  privilege for the mysql.user system table. 

•The currently authenticated account has the CREATE USER  and SYSTEM_USER  privileges. 

•Otherwise, the currently authenticated account can see the row for that account. Additionally, if the account has the CREATE USER  privilege but not the SYSTEM_USER  privilege, it can see rows for all other accounts that do not have the SYSTEM_USER  privilege. 

For more information about specifying account comments and attributes, see Section 13.7.1.3, “CREATE USER Statement” . 

## 26.3.47 The INFORMATION_SCHEMA USER_PRIVILEGES Table 

The USER_PRIVILEGES  table provides information about global privileges. It takes its values from the mysql.user  system table. 

The USER_PRIVILEGES  table has these columns: 

• GRANTEE 

The name of the account to which the privilege is granted, in ’ user_name ’@’ host_name ’  format. 

• TABLE_CATALOG 

The name of the catalog. This value is always def . 

• PRIVILEGE_TYPE 

The privilege granted. The value can be any privilege that can be granted at the global level; see Section 13.7.1.6, “GRANT Statement” . Each row lists a single privilege, so there is one row per global privilege held by the grantee. 

• IS_GRANTABLE 

YES  if the user has the GRANT OPTION  privilege, NO  otherwise. The output does not list GRANT OPTION as a separate row with PRIVILEGE_TYPE=’GRANT OPTION’ . 

