По умолчанию для mysqldump требуются права пользователя на блокировку таблиц.
Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде:
mysqldump: Got error: 1044: «Access denied for user ‘USER’@’%’ to database ‘DATABASENAME'» when using LOCK TABLES
Программа генерации дампа блокирует поочередно таблицы, чтобы создать текст скрипта.
Но если у пользователя нет требуемых привилегий на блокировку таблиц, воспользуйтесь ключом —single-transaction, который меняет подход к созданию дампа, генерируя его в рамках одной транзакции:
1 |
mysqldump -u MYUSER -pMYPASS -h MYHOST databaseName --single-transaction > output.mysql |
Прав на блокирову таблиц при этом не нужно.