Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL предоставя всички привилегии на база данни с изключение на една таблица

Знам, че това е стара публикация, но реших да добавя към въпроса @tdammers, за да видят другите. Можете също да извършите SELECT CONCAT върху information_schema.tables, за да създадете вашите команди за предоставяне, и да не се налага да пишете отделен скрипт.

Първо отменете всички привилегии от този db:

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

След това създайте своите 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";

Копирайте и поставете резултатите във вашия MySQL клиент и ги стартирайте всички.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да потисна изхода на заглавката на колона за един SQL израз?

  2. MySQL високо използване на процесора

  3. Разделяне на таблица от милиарди редове с футболни данни с помощта на контекста на данните

  4. Как да получите числови типове от MySQL с помощта на PDO?

  5. БРОЙ MySQL РАЗЛИЧЕН