Jak wykonać kopię zapasową bazy danych MySql w WordPress
Ostatnio przypadkiem skasowałem pewne informacje w bazie mysql mojego bloga. Niestety nie wykonałem, wcześniej kopii bezpieczeństwa. Ta przykra wpadka, zachęciła mnie aby regularnie wykonywać backup danych. Początkowo korzystałem z phpMyAdmin, do ręcznego wykonywania kopii bezpieczeństwa, ale szybko postanowiłem to zautomatyzować. Chcę przedstawić kilka sposobów w jaki można wykonywać kopię zapasową bazy danych mysql.
1. Backup za pomocą phpMyAdmin
Dostęp do do bazy danych uzyskujemy z poziomu przeglądarki internetowej, w graficznym środowisku, bez konieczności pracy z domyślnym interfejsem tekstowym. W pierwszej kolejności klikamy na link Bazy danych. Możesz mieć kilka baz danych. Kliknij, na nazwę tej, w której zapisane są Twoje dane z WordPress. Pokaże się zakładka, w której widoczne są tabele wykorzystywane przez WordPress.
Teraz najważniejszy krok, w którym musimy zaznaczyć następujące opcje:
- Wybrać tylko te tabele, które wykorzystuje twój blog WordPress.
- Zaznacz pole „Dodaj DROP TABLE”
- Zaznacz pełne „Pełne dodania”
- Zaznacz pole „Zapisz jako plik”
- Zaznacz pole „Nie” dla kompresji. Jeśli baza danych jest bardzo duża możesz użyć metody kompresji.
- Kliknij przycisk Dalej. Dane zostaną zapisane w komputerze.
2. Backup za pomocą zadań cron w cpanel
Dzięki tej usłudze kopia zapasowa bazy danych WordPress może być wykonywana cyklicznie, w zdefiniowanym wcześniej dniu, godzinie, minucie, a następnie skompresowana i wysłana e-mailem.
Ustawiamy godzinę, o której ma być wykonywana nasza kopia bezpieczeństwa, następnie cykl (dziennie, tygodniowo, miesięcznie). Jak już to ustalimy, w polu „Command to run” wprowadzamy naszą komendę:
mysqldump –user=UżYTKOWNIK –host=localhost –password=HASłO –all-databases –compress > /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.sql && gzip -c /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.sql > /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.gz && mutt -x -s BackupBazy -a /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.gz TWóJ-EMAIL && rm /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.sql && rm /home/NAZWA-TWOJEGO-KONTA/zrzut_bazy.gz
Oczywiście wytłuszczone słowa należy zastąpić, zgodnie ze swoimi ustawieniami konta/bazy.
Potem już tylko wciskamy „Zapisz crontab” i gotowe, możemy się cieszyć regularną kopią danych wysyłaną cyklicznie na nasz adres e-mail. Oczywiście w polu „Command to run”, można wpisać ścieżkę do skryptu, w którym będą zapisane wszelkie instrukcje dotyczące wykonania kopii i nie tylko.
3. Backup za pomocą wtyczki dla WordPress
Można też skorzystać z gotowych rozwiązań, instalując wtyczkę dla WordPress np. „WP-DB-Backup„, umożliwiającą wykonanie kopi zapasowej naszej bazy danych.
Tutaj, nie ma co się rozpisywać. Standardowa instalacja jak dla wszystkich wtyczek WordPress.
4. Inne sposoby na kopię bezpieczeństwa naszych danych mysql
Oczywiście to tylko kilka przykładów, w jaki sposób możemy zadbać o bezpieczeństwo naszych danych mysql. Można tworzyć różnego rodzaju skrypty php, cgi, itp itd…, korzystać z różnego rodzaju narzędzi automatyzujących te procesy. Wybór rozwiązania zależy od nas oraz jest w większości zależny od parametrów technicznych serwera, z którego korzystamy.
fajnie opisane..ale co pozniej? mam backup zrobiony i co?? co z nim zrobic? jak go ‚zainstalowac’?stronka mi ”zgasla” i gdzie teraz backup mam wrzucic?? mam serwer na active24.pl
W celu przywrócenia stworzonego wcześniej backupu twojej bazy, zanim go wgrasz musisz go rozpakować, poniższym poleceniem (oczywiście po umieszczeniu archiwum na twoim serwerze).
tar -xzvf zrzut_bazy.gz
Poleca się nie importowanie danych do obecnie używanej bazy danych, a utworzenie nowej, wgranie danych, a następnie zmodyfikowanie w pliku konfiguracyjnym nazwę nowej bazy lub po wgraniu zmienić nazwę na poprzednią.
Komenda którą wgrywa się dane z backupu do bazy danych:
mysql -p new_database < zrzut_bazy.sql
mysql -u root -pHasloMocne < zrzut_bazy.sql
dzieki stary, mialem z tym problem bo nie eksportowało mi całości, ale dzieki twojemu opisowi poszło ok, robilem wg pierwszego opisu. pozdrawiam
Sorry że odkopuje temat, ale szukam wtyczki do wordpressa który zrobi kopię strony, znacie jakąś? pozdrawiam