
Grzegorz Kalmus
Autor
Twoja strona pada. Serwer odpowiada błędem 500, pliki zniknęły, baza danych jest uszkodzona. Ile czasu masz na przywrócenie wszystkiego? Jeśli nie masz gotowego, przetestowanego backupu – odpowiedź brzmi: bardzo długo, albo wcale. Według raportu Veeam Data Protection Report 2024 aż 82% firm doświadczyło co najmniej jednej awarii danych w ciągu ostatniego roku, a średni czas przywracania bez kopii zapasowej wynosił ponad 20 godzin. Dla strony firmowej to katastrofa.
Strategia 3-2-1 to sprawdzony przez branżę IT schemat tworzenia kopii zapasowych, który minimalizuje ryzyko utraty danych do poziomu bliskiego zeru. W tym artykule dowiesz się:
- na czym polega reguła 3-2-1 i dlaczego jest standardem branżowym,
- co dokładnie backupować w przypadku strony internetowej,
- jak ustawić automatyczne kopie w WordPress (wtyczki, hosing, rsync),
- gdzie przechowywać backup offsite (S3, Backblaze B2),
- jak testować odtworzenie i co to jest RTO/RPO,
- jakie są wymagania RODO dotyczące kopii danych.
Czym jest reguła 3-2-1?
Reguła 3-2-1 pochodzi z fotografii analogowej (autor: Peter Krogh), ale szybko stała się standardem całej branży IT. Zasada jest prosta i można ją zapamiętać w trzech liczbach:
- 3 kopie danych – oryginał plus dwa backupy,
- 2 różne nośniki lub lokalizacje – np. dysk lokalny i chmura,
- 1 kopia offsite – poza siedzibą firmy lub poza serwerem produkcyjnym.
Dlaczego trzy, a nie dwie kopie? Bo awarie lubią się kumulować. Dysk twardy pada akurat wtedy, gdy serwer produkcyjny jest niedostępny. Ransomware szyfruje wszystko, co jest zamontowane na tym samym systemie. Jedna kopia offsite przełamuje ten scenariusz – nawet jeśli zginie oryginał i lokalna kopia, masz trzecie źródło niedotknięte awarią.
Ważne: Backup bez testu odtworzenia nie jest backupem. To tylko nadzieja na to, że coś zadziała w najgorszym momencie. Testowanie restore jest tak samo ważne jak samo tworzenie kopii.
Rozszerzenie: reguła 3-2-1-1-0
Nowsze rekomendacje, szczególnie po fali ataków ransomware, rozszerzyły regułę do 3-2-1-1-0:
- 1 kopia immutable (niemodyfikowalna, np. object lock w S3),
- 0 błędów weryfikacji kopii – każdy backup musi być zweryfikowany po stworzeniu.
Dla małej strony firmowej reguła 3-2-1 jest wystarczająca. Dla sklepu internetowego lub serwisu z dużym ruchem warto rozważyć pełne 3-2-1-1-0.
Co backupować w przypadku strony internetowej
Strona internetowa to więcej niż pliki HTML. Pełny backup składa się z trzech warstw:
Pliki strony
- Katalog główny aplikacji (np.
/var/www/htmllub/home/user/public_html), - konfiguracja serwera (pliki
.htaccess,nginx.conf), - certyfikaty SSL (opcjonalnie – można je odnowić),
- pliki .env z konfiguracją środowiska (bez kluczy API w backup chmurowym!),
- dla WordPress: cały katalog
wp-content(wtyczki, motywy, media).
Baza danych
To najważniejsza część backupu. Wszystkie posty, strony, zamówienia, użytkownicy, ustawienia – wszystko jest w bazie MySQL/MariaDB. Backup plików bez bazy jest prawie bezużyteczny przy odtwarzaniu pełnej strony.
- Dump MySQL:
mysqldump -u user -p baza_danych > backup.sql, - dla WordPressa: tabele wp_posts, wp_options, wp_users, wp_postmeta, wp_usermeta,
- dla sklepu WooCommerce: dodatkowo wp_woocommerce_order_items, wp_wc_order_stats.
Pliki konfiguracyjne
Konfiguracja środowiska (PHP, Nginx/Apache, SSL, firewall) skraca czas odtworzenia serwera od zera do kilku minut. Bez niej musisz rekonstruować wszystko z pamięci.
Częstotliwość tworzenia kopii i retencja
Nie ma jednej odpowiedzi dla wszystkich. Częstotliwość zależy od tego, jak często zmienia się Twoja strona:
| Typ strony | Backup plików | Backup bazy | Retencja |
|---|---|---|---|
| Strona wizytówka (rzadko edytowana) | Tygodniowy | Tygodniowy | 30 dni |
| Blog firmowy (1-3 posty/tydz.) | Codzienny | Codzienny | 30-60 dni |
| Sklep WooCommerce (zamówienia codziennie) | Codzienny | Co 6 godzin | 90 dni |
| Portal newsowy / duży ruch | Codzienny | Co 1-2 godziny | 90-180 dni |
Retencja to ile wersji kopii przechowujesz. Krótka retencja może być pułapką: jeśli infekcja złośliwym oprogramowaniem nastąpiła 40 dni temu, a masz tylko 30 dni kopii – nie masz czystej wersji do przywrócenia.
Automatyzacja backupu w WordPress
Manualne tworzenie kopii to przepis na zapomnienie o nich w najważniejszym momencie. Automatyzacja jest obowiązkowa.
UpdraftPlus – najpopularniejsza wtyczka
Według WordPress.org wtyczka UpdraftPlus ma ponad 3 miliony aktywnych instalacji i jest najczęściej pobieranym rozwiązaniem backup dla WordPress. Darmowa wersja obsługuje:
- planowane backupy plików i bazy danych osobno,
- wysyłkę na Google Drive, Dropbox, FTP/SFTP, S3,
- odtwarzanie przez panel administracyjny.
Wersja premium (ok. 70 USD/rok) dodaje backup przyrostowy, szyfrowanie, obsługę Backblaze B2 i dedykowane przechowywanie UpdraftVault.
BackWPup – alternatywa z większą kontrolą
BackWPup pozwala tworzyć „joby” – zadania backupu z dokładną kontrolą nad tym, co jest kopiowane, kiedy i gdzie. Obsługuje archiwizację do ZIP/TAR, przesyłanie na FTP, S3, Dropbox, SugarSync. Dobry wybór, gdy potrzebujesz zaawansowanej logiki (np. inny harmonogram dla bazy i plików).
Snapshoty na poziomie hostingu
Wiele hostingów zarządzanych (Kinsta, WP Engine, SiteGround, Cloudways) oferuje automatyczne snapshoty całego środowiska. To dobry drugi backup, ale nie zastępuje backupu offsite – snapshot na tym samym serwerze ginie razem z serwerem.
Jeśli korzystasz z zarządzanego hostingu lub naszej usługi backup, warto uzupełnić snapshoty hostingowe o kopię na zewnętrzny obiekt storage.
rsync + cron – dla zaawansowanych
Na serwerach VPS lub dedykowanych możesz ustawić automatyczne kopie przez rsync i cron:
# /etc/cron.d/backup-wp
0 2 * * * www-data /usr/local/bin/backup-wordpress.sh
# Skrypt backup-wordpress.sh
#!/bin/bash
DATE=$(date +%Y-%m-%d)
DEST="/backup/wordpress/$DATE"
mkdir -p "$DEST"
# Backup plików
rsync -az --delete /var/www/html/ "$DEST/files/"
# Dump bazy
mysqldump -u backup_user -p"$DB_PASS" wordpress > "$DEST/db.sql"
gzip "$DEST/db.sql"
# Przesyłka na S3
aws s3 sync "$DEST" "s3://twoj-bucket-backup/wordpress/$DATE/"
# Usuń lokalne kopie starsze niż 7 dni
find /backup/wordpress/ -type d -mtime +7 -exec rm -rf {} +
Backup offsite – S3 i Backblaze B2
Kopia offsite to centralny element reguły 3-2-1. Dwie najpopularniejsze opcje dla stron WordPress to Amazon S3 i Backblaze B2.
Amazon S3
Standard branżowy. Cena za przechowywanie: ok. 0,023 USD/GB/miesiąc (klasa Standard). Dla 10 GB backupu to ok. 0,23 USD miesięcznie. Dodaj transfer danych (0,09 USD/GB przy pobieraniu). Zalety: niezawodność 99,999999999% (11 dziewiątek), szeroka integracja z wtyczkami WP.
Backblaze B2
Backblaze B2 to tańsza alternatywa: 0,006 USD/GB/miesiąc (ok. 4x taniej niż S3). Pierwsze 10 GB za darmo. Doskonały stosunek ceny do jakości dla małych stron. UpdraftPlus Premium obsługuje B2 bezpośrednio.
Szyfrowanie backupu offsite
Zanim wyślesz backup na zewnętrzny serwis, zaszyfruj go. Powody są dwa: ochrona danych osobowych klientów (wymóg RODO) i zabezpieczenie przed nieautoryzowanym dostępem do danych biznesowych. UpdraftPlus Premium szyfruje backupy kluczem AES-256 przed wysyłką.
Testowanie odtworzenia – DRP, RTO, RPO
Backup bez testu odtworzenia jest jak gaśnica bez zawleczki. Wyglądasz przygotowany, ale możesz być zaskoczony w złym momencie.
Co to jest RTO i RPO?
- RPO (Recovery Point Objective) – maksymalny dopuszczalny czas utraty danych. Jeśli robisz backup raz dziennie, RPO wynosi 24 godziny – możesz stracić maksymalnie dobę pracy.
- RTO (Recovery Time Objective) – maksymalny dopuszczalny czas przywrócenia działania strony. Jeśli sklep musi działać w ciągu 2 godzin od awarii, Twoje RTO = 2 h.
Ustal konkretne wartości RTO i RPO dla swojej strony, zanim dojdzie do awarii. Sklep e-commerce z dziennymi zamówieniami ma inny RPO niż blog firmowy aktualizowany raz na tydzień.
Jak testować restore?
- Utwórz testowe środowisko (staging lub lokalny serwer – XAMPP, LocalWP).
- Pobierz kopię backupu z lokalizacji offsite (nie lokalną!).
- Odtwórz bazę danych i pliki.
- Sprawdź czy strona się uruchamia, czy treści są kompletne, czy formularze działają.
- Zmierz czas od pobrania backupu do działającej strony – to Twoje faktyczne RTO.
- Zrób test przynajmniej raz na kwartał lub po każdej dużej zmianie konfiguracji.
Usługi takie jak nasza opieka techniczna z backup obejmują regularne testy odtworzenia i raportowanie wyników. Dzięki temu wiesz, że w razie awarii backup zadziała zgodnie z oczekiwaniami.
Szyfrowanie i RODO – wymagania prawne dla backupu
Jeśli Twoja strona przetwarza dane osobowe (formularze kontaktowe, konto klienta, zamówienia w sklepie), backup tych danych podlega przepisom RODO (Rozporządzenie (UE) 2016/679). Kluczowe obowiązki:
- Integralność i poufność danych (art. 5 RODO) – backup musi być szyfrowany, szczególnie gdy jest przechowywany poza siedzibą firmy lub u podmiotów trzecich.
- Umowa powierzenia przetwarzania – jeśli backup trafia do chmury (AWS, Backblaze), powinieneś mieć podpisaną umowę DPA z dostawcą. AWS i Backblaze oferują standardowe DPA.
- Retencja danych – nie przechowuj backupu z danymi osobowymi dłużej niż wynika to z Twojej polityki retencji. Automatyczne usuwanie starych kopii jest wymagane.
- Rejestr czynności – jeśli przetwarzasz dane na dużą skalę, operacje backup/restore powinny być odnotowane w rejestrze czynności przetwarzania.
Więcej o obowiązkach RODO na stronie Urzędu Ochrony Danych Osobowych: uodo.gov.pl – bezpieczeństwo danych. Nasze rozwiązanie bezpieczeństwo strony uwzględnia konfigurację zgodną z RODO.
Monitoring backupu – skąd wiedzieć, że kopie się tworzą
Automatyzacja może się cicho posypać. Wtyczka może się wyłączyć po aktualizacji, token OAuth do Google Drive może wygasnąć, cron może przestać działać po zmianie serwera. Bez monitoringu nie wiesz o problemie, dopóki nie potrzebujesz backupu.
Skuteczny monitoring backupu to:
- Powiadomienia email po każdym backupie (sukces i błąd) – UpdraftPlus i BackWPup mają tę opcję wbudowaną.
- Alerty o braku backupu – jeśli przez 48 godzin nie pojawi się nowy plik kopii, system wysyła alert. Można to zrealizować skryptem lub narzędziem jak Cronitor.
- Dashboard statusu – połącz backup z systemem monitoringu strony, żeby mieć widok na stan całego środowiska w jednym miejscu.
Najczęstsze błędy w backupie stron
W praktyce opieki nad stronami klientów widzimy te same błędy, które zamieniają backup w pozorowane zabezpieczenie:
- Brak testu odtworzenia – najczęstszy i najgroźniejszy. Backup stworzony przed 2 laty, nigdy niezweryfikowany, może być uszkodzony lub niekompletny.
- Backup tylko na tym samym serwerze – gdy serwer pada lub zostaje skompromitowany, tracisz i oryginał, i kopię.
- Zbyt krótka retencja – 7 dni to za mało. Infekcja złośliwym oprogramowaniem bywa wykrywana po kilku tygodniach od momentu włamania.
- Backup bez bazy danych – pliki bez bazy to wrak. WordPress bez tabel wp_posts nie pokaże żadnych treści.
- Niezaszyfrowany backup w chmurze – naruszenie RODO i ryzyko wycieku danych klientów.
- Manualny backup „od czasu do czasu” – zawsze robimy go tuż przed aktualizacją, ale nie przed inną awarii. Automatyzacja eliminuje ten problem.
- Ignorowanie powiadomień o błędach – wtyczka przez miesiąc wysyłała alerty o problemie z autoryzacją Google Drive, ale nikt nie czytał tych maili.
Backup a bezpieczeństwo WordPress – połączona strategia
Backup to ostatnia linia obrony, nie pierwsza. Warto traktować go jako element szerszej strategii bezpieczeństwa, która obejmuje:
- aktualne wersje WordPress, wtyczek i motywów (sprawdź nasz artykuł bezpieczeństwo WordPress – 15 zasad),
- WAF (Web Application Firewall) blokujący ataki zanim dotrą do aplikacji,
- silne hasła i 2FA na koncie administracyjnym,
- monitoring aktywności (logi logowań, zmiany plików),
- regularne skanowanie malware.
Usługa bezpieczeństwo strony i backup i odzyskiwanie działają razem: jeden element zapobiega problemom, drugi pozwala na szybkie wyjście z sytuacji, gdy coś się stanie.
Warto też porównać hosting managed vs VPS pod kątem wbudowanych mechanizmów backup – szczegóły w artykule hosting managed vs VPS – co wybrać.
Praktyczne wskazówki – jak zacząć dziś
Jeśli jeszcze nie masz skonfigurowanego backupu, oto lista rzeczy do zrobienia w kolejności:
- Zainstaluj UpdraftPlus (darmową wersję) i skonfiguruj backup na Google Drive lub Dropbox.
- Ustaw harmonogram: baza – codziennie, pliki – tygodniowo (dostosuj do częstotliwości zmian).
- Włącz powiadomienia email o statusie backupu.
- Zrób pierwszy backup ręcznie i pobierz go lokalnie na dysk komputera.
- Przetestuj odtworzenie na lokalnym środowisku (LocalWP) – zmierz czas.
- Ustaw reminder w kalendarzu na test odtworzenia za 3 miesiące.
- Jeśli przetwarza dane klientów: zacznij od zaszyfrowanego backupu i podpisania DPA z dostawcą chmury.
Konfiguracja backupu zajmuje 30-60 minut. Brak backupu kosztuje czasem tygodnie pracy i tysiące złotych strat. Rachunek jest prosty.
FAQ – najczęstsze pytania o backup strony
Jak często powinienem robić backup strony WordPress?
Zależy od częstotliwości zmian. Blog aktualizowany codziennie wymaga codziennego backupu bazy danych. Strona wizytówka, która nie zmienia się przez tygodnie – wystarczy backup tygodniowy. Sklep internetowy z zamówieniami powinien robić backup bazy co kilka godzin, żeby RPO (maksymalna utrata danych) było akceptowalne.
Ile miejsca zajmuje backup WordPressa?
Standardowa strona WordPress waży 500 MB – 3 GB (zależnie od liczby zdjęć i plików). Backup plików to zwykle 70-90% tej wartości po kompresji ZIP. Backup bazy jest bardzo mały: 1-50 MB dla typowej strony firmowej, do kilkuset MB dla dużego sklepu. Planuj co najmniej 5 GB na przechowywanie 30-dniowej historii kopii.
Czy backup na tym samym serwerze ma sens?
Ma sens jako dodatkowa kopia, ale nie spełnia wymogu reguły 3-2-1. Kopia na tym samym serwerze ginie w przypadku awarii dysku, włamania do systemu lub działania ransomware. Zawsze musisz mieć co najmniej jedną kopię offsite – w chmurze lub na zewnętrznym dysku w innej lokalizacji.
Co to jest backup przyrostowy i czy jest lepszy niż pełny?
Backup pełny kopiuje wszystko za każdym razem. Backup przyrostowy kopiuje tylko zmiany od ostatniej kopii. Przyrostowy jest szybszy i zajmuje mniej miejsca, ale odtworzenie wymaga pełnej kopii bazowej plus wszystkich przyrostów – jest bardziej złożone. Dla małych stron backup pełny jest prostszy i wystarczający. Dla dużych instalacji (5 GB+) warto rozważyć przyrostowy.
Jak długo przechowywać kopie zapasowe strony?
Minimum 30 dni. Rekomendowane dla stron z danymi klientów: 90 dni. Długa retencja chroni przed sytuacją, gdy infekcja lub błąd zostanie wykryty późno – możesz cofnąć się do wersji sprzed problemu. Uważaj jednak na RODO: jeśli backup zawiera dane osobowe, nie możesz przechowywać go dłużej niż wynika to z polityki retencji danych.
Czy muszę szyfrować backup?
Jeśli backup zawiera dane osobowe użytkowników (imiona, emaile, adresy, dane zamówień) – szyfrowanie jest wymagane przez RODO (art. 32 Rozporządzenia). Nawet jeśli nie masz klientów w sklepie, szyfrowanie jest dobrą praktyką – chronisz dane dostępowe do bazy, klucze API i konfigurację serwera przed wyciekiem w razie nieautoryzowanego dostępu do bucketa chmury.
Podsumowanie
Reguła 3-2-1 to nie teoria – to konkretny schemat działania: trzy kopie, dwa nośniki, jedna offsite. Dla strony WordPress oznacza to kombinację backupu przez wtyczkę (UpdraftPlus lub BackWPup), snapshoty hostingowe i kopię na zewnętrznym object storage (S3 lub Backblaze B2).
Najważniejsze punkty do zapamiętania:
- Backupuj zawsze i bazę danych, i pliki – jedno bez drugiego jest prawie bezużyteczne.
- Ustaw retencję min. 30 dni (90 dla sklepów z zamówieniami).
- Zaszyfruj backup offsite – wymóg RODO i dobra praktyka.
- Testuj odtworzenie co najmniej raz na kwartał – bez testu backup to złudne poczucie bezpieczeństwa.
- Monitoruj czy kopie w ogóle się tworzą – cichej awarii backupu nie widać.
Jeśli potrzebujesz pomocy w skonfigurowaniu backupu, jego automatyzacji lub przetestowaniu odtworzenia – zajrzyj do naszej oferty backup i odzyskiwanie lub napisz bezpośrednio.
Skonfigurujemy automatyczny backup 3-2-1, offsite w chmurze, z szyfrowaniem i regularnym testem odtworzenia. Wiesz, że zadziała, gdy będzie potrzebny.

