Назад | Перейти на главную страницу

Минимальные разрешения для пользователя для выполнения mysqldump?

Я хочу начать планирование удаленных crons mysqldump, и я бы предпочел использовать для этих целей специальную учетную запись. Я хочу предоставить этому пользователю минимальные разрешения для получения полного дампа, но я не уверен, что лучший способ сделать это.

Это так просто, как

grant SELECT on *.* to '$username'@'backuphost' identified by 'password'; 

или я упускаю лучший способ?

Я считаю, что пользователю просто нужно выбрать разрешения для таблиц для резервного копирования.

Редактировать: Этот парень говорит, что нужно также назначить разрешение на "блокировку таблиц", что имеет смысл.

Также вам понадобится SHOW_VIEW, если в вашей БД есть представления.

Для тех, кому интересно, вот точная команда:

GRANT SELECT, LOCK TABLES, SHOW VIEW ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

Вроде ПЕРЕЗАГРУЗКА тоже нужна. Так:

GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';

И вам нужно СОБЫТИЕ, если вы тоже хотите сбросить СОБЫТИЯ.

И вам понадобится TRIGGER, если вы тоже хотите сбросить TRIGGER. (несмотря на то, что написано в руководстве!)