¿Cómo conocer a todos los usuarios que pueden acceder a una base de datos?
19
Conéctese a la instancia de mysql como usuario administrador (generalmente como root) y dé el siguiente comando ...
select user from mysql.db where db='DB_NAME';
select user from mysql.db
sin calificación devuelve 2 filas en blanco también.La respuesta de user79644 les otorga a los usuarios privilegios a nivel de base de datos, pero los extrañará solo con privilegios a nivel de tabla, columna o procedimiento. Para encontrarlos todos, use las siguientes declaraciones:
Al menos en MySQL 5.5, parece que tener privilegios a nivel de columna implica que tiene privilegios a nivel de tabla. Tener privilegios a nivel de tabla no implica que tenga privilegios a nivel de base de datos. No estoy seguro acerca de los privilegios a nivel de procedimiento.
fuente
ERROR 1046 (3D000): No database selected
mysql
base de datos. Ahí es donde se almacenan todos los datos utilizados por MySQL. Dé el comandoUSE mysql;
de agregar el nombre de la base de datos a los nombres de la tabla, comoFROM mysql.db
oFROM mysql.tables_priv
fuente
Debe tener en cuenta que MySQL
GRANT
para bases de datos puede contener caracteres comodín . Esto debe tenerse en cuenta mediante el usoLIKE
en la consulta:fuente