【问题标题】:MySQL: find all users with a given permission for a dbMySQL:查找对数据库具有给定权限的所有用户
【发布时间】:2013-06-11 16:16:56
【问题描述】:

查找查询以查找对给定数据库具有给定权限(EG 执行)的所有用户。

理由:清理古老的存储过程并想知道谁可能在使用它们。

我可以想象一个即插即用的 SP,我在其中循环遍历“show grants for xxx”返回的所有值,但我希望有更好的方法。

【问题讨论】:

  • 查看mysql.user 表中的数据 - 我相信它存储了您需要的信息。

标签: mysql permissions


【解决方案1】:
select * from mysql.user where `Execute_priv` = 'Y'

Execute_priv 替换为您所追求的其他权限的列名

对于逐个数据库的权限,请尝试查询 mysql.db 表:

select * from mysql.db where `Db` = 'databasename' and `Execute_priv` = 'Y'

【讨论】:

  • 有没有办法在逐个数据库的基础上做到这一点?
  • 我相信你可以逐个地检查 mysql.db 表的权限,我已经更新了答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-26
  • 2011-07-14
  • 1970-01-01
  • 2011-06-28
相关资源
最近更新 更多