有没有办法列出所有被授予数据库访问权限的用户/主机?我知道我可以这样做:
> show grants for someuser;
+------------------------------------------------------------------------------------------------------+
| Grants for someuser@% |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `someuser`@`%` IDENTIFIED BY PASSWORD '*XXXXXXXXXXXXX' |
| GRANT ALL PRIVILEGES ON `a_database`.* TO `someuser`@`%` WITH GRANT OPTION |
+------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
或这个:
> show grants for someuser@afqdn;
+-----------------------------------------------------------------------------------------------------------------------+
| Grants for someuser@afqdn |
+-----------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `someuser`@`qfqdn` IDENTIFIED BY PASSWORD '*XXXXXXXXXXXXX' |
| GRANT ALL PRIVILEGES ON `a_database`.* TO `someuser`@`afqdn` |
+-----------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
有没有办法让我在请求中提供数据库?然后一次性获取已获得该数据库访问权限的所有不同用户?在我使用的示例中,它从给定的用户名开始(对于我的特定用例,我确实有用户名),但是我们如何才能一次性列出所有用户,而不是逐个猜测用户/ fqdn?
您可以使用
mysql.db
存储以下数据的表在您的特定情况下,您可以使用以下查询