如何在不访问数据库“mysql”的情况下检索授予的权限?

Gum*_*mbo 6 mysql permissions

作为无法访问mysql数据库的 MySQL 用户,是否可以检索我的权限?

Gum*_*mbo 4

在这种情况下,使用似乎确实SHOW GRANTS有效:

\n\n
SHOW GRANTS FOR CURRENT_USER;\n
Run Code Online (Sandbox Code Playgroud)\n\n

尽管手册指出您仍然需要访问mysql数据库:

\n\n
\n

SHOW GRANTS需要mysqlSELECT数据库的权限。

\n
\n\n

直接访问mysql.user实际上并没有\xe2\x80\x99 工作,可能是因为它还包含其他敏感信息,例如其他用户的密码:

\n\n
\n
mysql> SELECT * FROM mysql.user;\nERROR 1142 (42000): SELECT command denied to user \'user\'@\'host\' for table \'user\'\n
Run Code Online (Sandbox Code Playgroud)\n
\n