Mam bardzo duże bazy danych z dziesiątkami tysięcy tabel, z których niektóre mają do 5 GB danych w dziesiątkach milionów wpisów. (Prowadzę popularną usługę)... Zawsze miałem bóle głowy podczas tworzenia kopii zapasowych tych baz danych. Używając domyślnego mysqldump, szybko wymyka się spod kontroli obciążenia serwera i blokuje wszystko... mające wpływ na moich użytkowników. Próba zatrzymania procesu może prowadzić do awarii tabel i wielu przestojów podczas odzyskiwania tych tabel.
Teraz używam...
mysqldump -u USER -p --single-transaction --quick --lock-tables=false DATABASE | gzip > OUTPUT.gz
odniesienie do mysqldump na dev.mysql.com mówi nawet...
Nie mówi nic o tym, że jest to zależne od bazy danych będącej InnoDB, moje to myISAM i to działało dla mnie pięknie. Obciążenie serwera było prawie całkowicie nienaruszone, a moja usługa działała jak Rolex podczas całego procesu. Jeśli masz duże bazy danych, a tworzenie ich kopii zapasowych ma wpływ na użytkownika końcowego... TO JEST rozwiązanie.;)