如何判断哪些 MySQL 用户可以访问数据库以及他们拥有哪些权限?
当我单击“权限”时,我似乎能够从 phpMyAdmin 获取此信息。. .
Users having access to "mydatabase"
User Host Type Privileges Grant
myuser1 % database-specific ALL PRIVILEGES Yes
root localhost global ALL PRIVILEGES Yes
myuser2 % database-specific SELECT, INSERT, UPDATE No
Run Code Online (Sandbox Code Playgroud)
. . . 但我想知道如何从命令行执行此查询。
(phpMyAdmin 经常向我展示它正在执行的命令的 SQL 语法,但在这种情况下我没有看到它。)
请注意,我不是在问特定用户有什么授权(即“为 myuser1 显示授权”),而是在给定数据库名称的情况下,我如何确定哪些 MySQL 用户可以访问该数据库以及他们拥有哪些权限? 基本上,如何从命令行获取上面的图表?
小智 22
您可以将 \G 附加到命令以获取显示在“网格”视图中的结果
SELECT * FROM mysql.db WHERE Db = '<database name in LC>'\G;
Run Code Online (Sandbox Code Playgroud)
您可以尝试一下,应该提供最佳的可读性:
select db 'DATABASE', host HOST, user USER from mysql.db where db = '<databasename>';
Run Code Online (Sandbox Code Playgroud)
cli 更容易记住的东西:
select db,host,user from mysql.db;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52577 次 |
最近记录: |