ethrbunny
ethrbunny

Reputation: 10469

MySQL: find all users with a given permission for a db

Looking for a query to find all users who have a given permission (EG execute) for a given database.

Rationale: cleaning up ancient stored procedures and want to know who might be using them.

I can imagine a plug-n-chug SP where I loop through all the values returned from "show grants for xxx" but I'm hoping there is a better way.

Upvotes: 1

Views: 83

Answers (1)

JMac
JMac

Reputation: 395

select * from mysql.user where `Execute_priv` = 'Y'

Replace Execute_priv with the column name of the other priviledges you're after

For privileges on a DB by DB basis, try querying the mysql.db table:

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

Upvotes: 3

Related Questions