sql >> Base de Datos >  >> RDS >> Mysql

MySQL otorga todos los privilegios a la base de datos excepto una tabla

Sé que esta es una publicación anterior, pero pensé en agregar la pregunta de @tdammers para que otros la vean. También puede realizar SELECT CONCAT en information_schema.tables para crear sus comandos de concesión y no tener que escribir un script separado.

Primero revoca todos los privilegios de esa base de datos:

REVOKE ALL PRIVILEGES ON db.* FROM [email protected];  

Luego cree sus instrucciones GRANT:

SELECT CONCAT("GRANT UPDATE ON db.", table_name, " TO [email protected];")
FROM information_schema.TABLES
WHERE table_schema = "YourDB" AND table_name <> "table_to_skip";

Copie y pegue los resultados en su cliente MySQL y ejecútelos todos.