Jaki jest najlepszy sposób na wykonanie kopii zapasowej serwera MySQL? Chciałbym metody, która nie wymaga wyłączania serwera. Czy jest coś takiego jak niezbędna kopia zapasowa InnoDB , czy mogę po prostu użyć narzędzi do tworzenia kopii zapasowych zawartych w narzędziach MySQL Administrator. Jakie zalety oferuje jedna nad drugą?
13
spójrz na xtrabackup z Percona - to interesująca alternatywa open source dla mysqlhotcopy dla baz danych innodb.
możesz przeczytać więcej na ten temat tutaj
źródło
mysqldump może być używany, ale nie gwarantuje spójnego zestawu danych, chyba że zablokujesz wszystkie tabele na czas zrzutu. Spowoduje to przejście bazy danych w tryb tylko do odczytu , ale zapewni spójność zrzutu.
Możesz zablokować tabele za pomocą polecenia:
Po zakończeniu możesz zwolnić blokadę za pomocą:
źródło
spójrz na to pytanie na temat przepełnienia stosu
Najlepsza praktyka tworzenia kopii zapasowej produkcyjnej bazy danych MySQL?
dobrze obejmuje ten temat
źródło
Skonfiguruj replikację MySQL . Jako bonus otrzymujesz serwer do wykonywania ciężkich zadań raportowania i mysqldump bez wpływu na główny db bazy danych.
źródło
Najłatwiej jest po prostu użyć polecenia mysqldump .
źródło
Jest też narzędzie o nazwie mysqlhotcopy, na które spojrzałem od razu i pomyślałem, że jest bardzo obiecujące - jednak nigdy go nie użyłem.
źródło