Ada*_*tan 1 mysql permissions command-line
有没有办法显示对数据库拥有权限的所有用户?
我正在寻找类似的东西:
> show_permissions_for_db <DB>;
+----------+----------------------+
| User | Permissions |
+----------+----------------------+
| jeff | read |
| jill | read, write |
| jack | read, write, grant |
+----------+----------------------+
Run Code Online (Sandbox Code Playgroud)
看看查询
SELECT
md.host `Host`,
md.user `User`,
md.db `Database`,
REPLACE(RTRIM(CONCAT(
IF(md.Select_priv = 'Y', 'Select ', ''),
IF(md.Insert_priv = 'Y', 'Insert ', ''),
IF(md.Update_priv = 'Y', 'Update ', ''),
IF(md.Delete_priv = 'Y', 'Delete ', ''),
IF(md.Create_priv = 'Y', 'Create ', ''),
IF(md.Drop_priv = 'Y', 'Drop ', ''),
IF(md.Grant_priv = 'Y', 'Grant ', ''),
IF(md.References_priv = 'Y', 'References ', ''),
IF(md.Index_priv = 'Y', 'Index ', ''),
IF(md.Alter_priv = 'Y', 'Alter ', ''),
IF(md.Create_tmp_table_priv = 'Y', 'Create_tmp_table ', ''),
IF(md.Lock_tables_priv = 'Y', 'Lock_tables ', ''),
IF(md.Create_view_priv = 'Y', 'Create_view ', ''),
IF(md.Show_view_priv = 'Y', 'Show_view ', ''),
IF(md.Create_routine_priv = 'Y', 'Create_routine ', ''),
IF(md.Alter_routine_priv = 'Y', 'Alter_routine ', ''),
IF(md.Execute_priv = 'Y', 'Execute ', ''),
IF(md.Event_priv = 'Y', 'Event ', ''),
IF(md.Trigger_priv = 'Y', 'Trigger ', '')
)), ' ', ', ') AS `Privileges`
FROM
mysql.db md WHERE db='DB_NAME';
Run Code Online (Sandbox Code Playgroud)
它可能会给出你想要的结果。
作为参考,请查看如何获取 MySQL 用户的权限列表。
| 归档时间: |
|
| 查看次数: |
346 次 |
| 最近记录: |