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

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

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

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

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

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

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

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

Скрипт для переименования базы данных в mySQL

Сентябрь 29, 2020 г.

В mySQL нет выражения вроде RENAME DATABASE oldName to newName. Если возникла задача переименовать базу данных, придется выполнить по-этапно: операции создания новой БД, копирования таблиц из старой базы (RENAME TABLE ...) и удаление старой базы. ...

Читать

Ошибка MySQL Incorrect datetime value: '0000-00-00 00:00:00'

Февраль 16, 2023 г.

Появляется, если поле типа datetime уже содержит подобные нулевые значения при попытке изменить как тип поля (через alter table), так и сами значения в таблице. Вероятно ошибка возникает, если вы импортировали данные в вашу базу. Скорее всего из-за ...

Читать

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

Май 15, 2016 г.

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

Читать

Как получить номер строки в MySql?

Ноябрь 5, 2016 г.

Что делать, если нужно пронумеровать строки прямо в запросе? Полистав руководство MySql 5.5, нужной функции я не нашел. Мне нужно было сохранять позиции пользователей в рейтинге, т.е. пронумеровать пользователей в зависимости от значения их рейтинга. ...

Читать
 

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

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



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