Mysql
 sql >> база данни >  >> RDS >> Mysql

паралелност на mysqldump

Е, това не е сигурно, от Mysql Manual :

Тази опция изпраща оператор START TRANSACTIONSQL към сървъра преди изхвърляне на данни. Полезно е само с транзакционни таблици като InnoDB и BDB, защото тогава изхвърля последователното състояние на базата данни по времето, когато BEGIN е бил издаден, без да блокира никакви приложения.

Когато използвате тази опция, трябва да имате предвид, че само InnoDB таблици се изхвърлят в последователно състояние. Например, всички MyISAM или MEMORY таблици, изхвърлени при използване на тази опция, все още могат да променят състоянието си.

Докато дъмпът на --single-transaction е в процес, за да се осигури валиден dumpfile (правилно съдържание на таблица и координати на двоичен журнал), никоя друга връзка не трябва да използва следните изрази:ALTER TABLE, CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATETABLE. Последователното четене не е изолирано от тези изрази, така че използването им в таблица, която трябва да бъде изхвърлена, може да доведе до SELECT, който се изпълнява от mysqldump за извличане на съдържанието на таблицата, за да се получи неправилно съдържание или да се провали.

Опцията --single-transaction и опцията --lock-tables са взаимно изключващи се, тъй като LOCK TABLES кара всякакви висящи транзакции да бъдат ангажирани имплицитно.

Тази опция не се поддържа за MySQLCluster таблици; не може да се гарантира, че резултатите са последователни поради факта, че NDBCLUSTER механизмът за съхранение поддържа само READ_COMMITTED ниво на изолация на транзакция. Вместо това винаги трябва да използвате NDBbackup и възстановяване.

За да изхвърлите големи таблици, трябва да комбинирате опцията --single-transaction с --quick.

Ако искате да архивирате/преместите своята база данни на живо, трябва да помислите за MySQL репликация




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Прилагане на разрешения за колона за таблица върху задействане

  2. Как да извлечете всички записи чрез външен ключ с Laravel

  3. Тип данни на резултата SUM в MySQL

  4. MySQL LOAD DATA INFILE със запетая като десетичен разделител

  5. ГРЕШКА 1142 (42000):командата ALTER е отказана