Я хочу начать планирование удаленных 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. (несмотря на то, что написано в руководстве!)