Mysqldump без блокировки таблиц

По умолчанию для mysqldump требуются права пользователя на блокировку таблиц.

Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде:

mysqldump: Got error: 1044: «Access denied for user ‘USER’@’%’ to database ‘DATABASENAME'» when using LOCK TABLES

Программа генерации дампа блокирует поочередно таблицы, чтобы создать текст скрипта.

Но если у пользователя нет требуемых привилегий на блокировку таблиц, воспользуйтесь ключом —single-transaction, который меняет подход к созданию дампа, генерируя его в рамках одной транзакции:

Прав на блокирову таблиц при этом не нужно.

Мало букафф? Читайте есчо !

Сортировка результатов при использовании DISTINCT в MySql

Май 15, 2016 г.

Есть один феномен, связанный с внутренней сортировкой в mySQL, которая служит для реализации функционала DISTINCT (выбора уникальных значений). Если вы ...

Читать

Группировка строковых значений в выборке из базы данных

Сентябрь 30, 2018 г.

Группировка по полю, содержащему число, используется значительно чаще, чем группировка по текстовому полю. Я думаю, вы использовали функции вроде AVG(), ...

Читать

Развертывание бекапов mySQL из консоли unix

Февраль 6, 2018 г.

Как развернуть дамп базы данных mySQL, созданный ранее? Дамп представляет из себя mysql скрипт, в котором последовательно создаются таблицы (CREATE TABLE ...) и, возможно, другие объекты и производиться их наполнение (INSERT INTO ...). Нужно лишь отправить ...

Читать

Как удалить дубликаты из таблицы в MySQL

Сентябрь 24, 2025 г.

Под дублями можно иметь в виду разные условия. Возьмем как пример таблицу имен. В этой таблице есть повторяющиеся значения в поле name. Разберём практический способ удалить такие записи в MySQL с помощью одного SQL-запроса. Пример исходной таблицы ...

Читать
 

Комментарии к «Mysqldump без блокировки таблиц»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: