Может кто-нибудь объяснить, как mysqldump--single-transaction
действительно работает для транзакционных столов, таких как InnoDB? Я читал официальный documentation, но до сих пор не имеет клей. Выполняет ли он для блокировки таблицы вместо глобальной блокировки, как --lock-tables
? Кроме того, mysqldump запускает --opt
как вариант по умолчанию, который включает в себя --lock-tables
, но они являются взаимоисключающими с --single-transaction
, как описано в ссылке выше. Должен ли я использовать --skip-opt
при использовании --single-transaction
в одном mysqldump команда?Mysqldump - вариант одной транзакции
Мне нужно сбросить таблицу InnoDB размером ~ 700 Гб, и я ищу правильную команду, чтобы добиться этого. В настоящее время я использую ниже одного:
mysqldump -B my_db --quick --single-transaction --max_allowed_packet=512M --compress --order-by-primary
Заранее благодарен.
Почему бы вам просто не посмотреть в выходном файле, чтобы посмотреть, что он делает? – Barmar
Будете ли вы получать доступ к таблице (таблицам) во время сброса? Записать? –
Вместо этого см. Xtradbdump Percona. –