По умолчанию для mysqldump требуются права пользователя на блокировку таблиц.
Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде:
mysqldump: Got error: 1044: «Access denied for user ‘USER’@’%’ to database ‘DATABASENAME'» when using LOCK TABLES
Программа генерации дампа блокирует поочередно таблицы, чтобы создать текст скрипта.
Но если у пользователя нет требуемых привилегий на блокировку таблиц, воспользуйтесь ключом —single-transaction, который меняет подход к созданию дампа, генерируя его в рамках одной транзакции:
|
|
mysqldump -u MYUSER -pMYPASS -h MYHOST databaseName --single-transaction > output.mysql |
Прав на блокирову таблиц при этом не нужно.
Данная запись опубликована в 11.11.2019 14:08 и размещена в рубрике mySQL.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 20, 2023 г.
Обычно для этого требуется выполнить две команды - создать пользователя, выдать права.
Создание пользователя MySQL
Для нашей цели достаточно выполнить следующую команду:
[crayon-698955dce0e34013481349/]
Где new-user-name - имя нового пользователя, ...
Читать
Апрель 24, 2023 г.
В MSSQL есть функция ROW_NUMBER(), которая нумерует строки выборки. В MySQL такой функции пока нет, но мы можем использовать трюк с переменными для достижения нужного эффекта.
К примеру, вы хотите выбрать название книг и пронумеровать список. Изначально ...
Читать
Май 15, 2016 г.
Есть один феномен, связанный с внутренней сортировкой в mySQL, которая служит для реализации функционала DISTINCT (выбора уникальных значений). Если вы ...
Читать
Март 6, 2019 г.
Для mySQL 8й версии эта статья не актуальна, т.к. там появилась целая серия замечательных функций, в том числе ROW_NUMBER(). Но пока на значительном количестве хостингов используется 5я версия.
Приём прост: требуется объявить переменную и инкрементировать ...
Читать