Wykonujemy automatyczne kopie zapasową WordPressa

Powodów, dla których należy wykonywać kopie bezpieczeństwa, jest tyle, co dowcipów o informatykach. Prawda jest jednak taka, że zarówno backupów, jak i dobrych informatyków nigdy nie jest zbyt wiele. Dziś pomówmy jednak o tym, dlaczego powinniśmy, w jaki sposób oraz gdzie przechowywać kopie zapasowe WordPressa.

Jeżeli chcemy spać spokojnie i nie martwić się o to, że nasza rozwijana przez miesiące strona firmowa lub blog zostały bezpowrotnie usunięte przez włamywaczy (lub nasz błąd), powinniśmy w pierwszej kolejności zadbać o wykonywanie kopii bezpieczeństwa. O ile wszyscy profesjonalni hostingodawcy wykonują kopię plików swoich klientów samodzielnie, to zazwyczaj nie jest ona przechowywana przez dłuższy okres, co oznacza, że bez samodzielnych backupów nie będziemy w stanie wygodnie przywrócić stanu strony na przykład sprzed kwartału. Warto jednak pamiętać, że LH.pl kopię zapasową wykonuje automatycznie od pierwszego dnia posiadania aktywnego hostingu i przechowuje przez 30 dni, co pozwoli nam w zupełności na odratowanie strony np. w przypadku włamania.

Dzięki ogromnej społeczności zbierającej się wokół WordPressa, we wtyczkach służących do tworzenia kopii bezpieczeństwa możemy przebierać i wybierać. Ja ze swojej strony chciałbym polecić Wam moją ulubioną – BackWPup. Ta pobrana ponad 4 miliony razy wtyczka pozwoli nam zautomatyzować wykonywanie kopii zapasowych na jedną ze wskazanych, również zdalnych, lokalizacji. Tworzone przez nią backupy zarówno plików źródłowych, jak i bazy danych mogą być również zapisywane w tej samej lokalizacji, co WordPress, ale równie dobrze możemy przesyłać je na serwer FTP, Dropboxa, Simple Storage Service od Amazona, przestrzeń usługi Microsoft Azure, RackSpaceCloud, SugarSync i wiele innych.

Dobrą praktyką jest przetrzymywanie tworzonych kopii w przynajmniej dwóch lokalizacjach. Korzystając z tej wskazówki, przygotujmy zatem plan tworzenia kopii zapasowych dla sklepu internetowego, który obsługuje przynajmniej kilka zamówień dziennie, ale nowe produkty pojawiają się w nim sporadycznie – mniej więcej raz na dwa tygodnie. Znając te założenia, powinniśmy ustawić wykonywanie automatycznych kopii zapasowych bazy danych (która przechowuje miedzy innymi dane o zamówieniach, użytkownikach i stanach magazynowych) nawet raz dziennie. Rzadziej (raz w tygodniu) będziemy sporządzać kopie nowych zdjęć produktów, a jeszcze rzadziej (2 razy w miesiącu) kompletną kopię witryny (mowa tutaj o plikach źródłowych szablonu, wtyczek, samego WordPressa oraz bazy danych).

Nasz plan kopii zapasowych prezentować będzie się w sposób następujący:

Plan tworzenia kopii bezpieczeństwa

Zanim przystąpimy do konfiguracji tworzenia backupów według powyższego schematu powinniśmy wybrać miejsce ich przechowywania. Jednymi z ciekawszych, oraz bezpieczniejszych miejsc są powierzchnie takich gigantów jak Amazon, Microsoft czy Google. Cena utrzymywania u na ich urządzeniach backupów zajmujących 100GB przy możliwości pobrania nawet 2 GB danych miesięcznie (w przypadku przywracania kopii) wacha się od niecałego dolara (Amazon Glacier Storage), przez około $1,5 (Microsoft Azure) do minimalnie powyżej $2 (Google Coldline Storage). Jeśli jednak boimy się samodzielnej konfiguracji kont oraz skomplikowanych dla osób spoza branży cenników, zawsze możemy pokusić się o umieszczanie ich w takich usługach jak: Dropbox (dysk o pojemności 1TB kosztuje około $12 miesięcznie), RackSpaceCloud ($7,49 miesięcznie za możliwość umieszczenia do 100GB danych) czy po prostu na innym naszym serwerze FTP.

Jako że posiadam serwer FTP o dużej pojemności, największe (kompletne) kopie przechowuję właśnie na nim. Te drobniejsze umieszczam na przestrzeni od firmy Google. Na potrzeby dzisiejszego przykładu skonfigurujmy jednak automatyczne tworzenie backupów na tego pierwszego. Po zainstalowaniu wtyczki BackWPup przejdźmy do zakładki „Add new job” znajdującej się w w menu panelu administracyjnego naszej strony.

Panel ustawień wtyczki BackWPup

Jako nazwę zadania wpisujemy „codzienny backup”, a jako jego akcję wybieramy „database backup”. W części „Job Destinaton” wskazujemy „backup to FTP”, a poniżej podaję adres e-mail, na który mają być wysyłane logi dotyczące tworzenia kopii. Zapisujemy ustawienia i przechodzimy do kolejnej zakładki – „Schedule”.

Teraz, zgodnie z przyjętym schematem, powinniśmy wprowadzić harmonogram uruchamiania tworzenia backupów. Wybieramy „with WordPress cron”, a w polu „scheduler type” zaznaczamy „advanced”. Poniżej pojawiło się nam 5 tabel. Pierwsza z nich reprezentuje minuty, druga godziny, trzecia dzień miesiąca, czwarta miesiąc, a piąta dzień tygodnia. Z ich pomocą możemy tworzyć nie tylko tak proste harmonogramy, jak uruchomienie tworzenia kopii każdego dnia miesiąca, ale również wymusić akcję o 5:20 każdego 10. dnia parzystego miesiąca. Warto mieć na uwadze, że tworzenie kopii zapasowych może zdecydowanie obciążyć serwer, a przez to spowolnić działanie strony, dlatego zaleca się wykonywanie ich w godzinach, w których odnotowujemy najmniejszy ruch na witrynie (najczęściej są to godziny nocne – od 2 do 5 w nocy, ale najlepiej upewnić się korzystając np. z usługi Google Analytics). Projektując harmonogram uruchomienia tworzenia codziennej kopii zapasowej bazy danych o 2:30 w nocy, powinniśmy wybrać następujące pola: minutes 30, hours 2, day of month any, month any, day of week any.

Ustawienia cron kopii bezpieczeństwa dla WordPress

Gdybyśmy ustawiali teraz kolejny harmonogram – wykonywania kopii mediów – ustawienie byłoby następujące (3:00 w nocy co wtorek): minutes 30, hours 3, day of month any, month any, day of week tuesday.

Ustawienia cron kopii bezpieczeństwa dla WordPress

Ustawienia zapisujemy, by następnie przejść do kolejnej zakładki – „DB Backup”. W niej określamy, które tabele z bazy danych będą zapisywane. Jeśli chcemy tworzyć jej kopię zapasową – wybieramy „all”, a poniżej „backup file compression: GZip”. Po zapisaniu przechodzimy do „Files”. Jeżeli tworzylibyśmy kopię zapasową plików źródłowych, w tym widoku możemy wybrać, które foldery (wraz z ich zawartością) powinny być backupowane. Ostatni widok różni się nazwą w zależności od wybranego miejsca docelowego kopii zapasowej. W naszym przypadku jest to „To: FTP” i to tutaj musimy wprowadzić dane dostępowe do serwera FTP, na który mają być wysyłane kopie zapasowe. Gdy stworzymy już akcję kopiującą co noc bazę danych, przystępujemy do zaplanowania wykonywania kopii zdjęć, pamiętajmy cały czas o właściwym doborze folderów, które chcemy zapisywać, a także poprawnym ustawieniu harmonogramu.

W przypadku wszelkich problemów ze stworzeniem kopii zapasowej oraz jej wysłaniem otrzymamy maila z logiem tworzonym przez wtyczkę, co pozwoli nam w szybki sposób zidentyfikować źródło błędu. Znając plugin BackWPup, który w tak łatwy sposób pozwala na tworzenie kopii zapasowych, po prostu nie wypada ich nie ustawić i tym samym nie zabezpieczyć owoców swojej pracy przed, nawet przypadkowym, zniszczeniem.

Darmowy kurs WordPress
Poradnik WordPress
Artykuł odpowiedział na twoje pytanie? Udostępnij go dalej:
Obrazek domyślny
dzialpomocy