Jeśli masz możliwość zatrzymania swojego sklepu na 1-3 godziny, migracja jest dość prosta. Wiele poradników opisuje, jak to zrobić: skopiuj pliki i bazę na nowy serwer, a następnie oddeleguj domenę. Jednak w tym wpisie skupimy się na przeprowadzeniu migracji w pełnej integralności danych w możliwie jak najkrótszym czasie (najlepiej w czasie rzeczywistym).
Sklep generuje zamówienia średnio co kilka minut, więc każda minuta źle zaplanowanej migracji to potencjalna strata dla klienta. Nie możemy sobie pozwolić na najmniejsze pomyłki. Środowisko docelowe zostało zweryfikowane i przetestowane. Wszystko działa poprawnie – mamy kopię odwzorowaną i wykonane zamówienia testowe. Pozostało tylko przenieść dane.

IP na firewallu jest przepuszczone do bazy, dostęp jest – możemy zaczynać.
1. Zatrzymanie sklepu
Zamykamy sklep, aby zatrzymać nowe zamówienia i zminimalizować możliwość utraty danych podczas migracji.
mysqldump -u user -p database_name > backup.sqlSkopiuj plik backupu na nowy serwer:
scp backup.sql user@newserver:/path/to/destinationOdtwórz bazę na nowym serwerze:
mysql -u user -p new_database_name < /path/to/destination/backup.sql2. Modyfikacja konfiguracji bazy danych Na starym serwerze edytuj plik konfiguracyjny PrestaShop, aby odwoływał się do nowego serwera bazy danych.
Znajdź plik settings.inc.php w folderze /config i zmień ustawienia bazy danych:
define('_DB_SERVER_', 'new_database_server_ip');
define('_DB_NAME_', 'new_database_name');
define('_DB_USER_', 'new_database_user');
define('_DB_PASSWD_', 'new_database_password');3. Przegrywanie plików W tej chwili migracja plików nie ma znaczenia, czy trwa 3 czy 5 godzin, ponieważ wszystkie dane są już zapisywane na nowym serwerze bazy danych.
rsync -avz /path/to/prestashop/ user@newserver:/path/to/destination/4. Oddelegowanie rekordu A
Aby przyspieszyć proces migracji, zaktualizuj rekord A DNS, aby wskazywał na nowy serwer.
Upewnij się, że rekord TTL jest ustawiony na jak najkrótszy czas (np. 5 minut) przed migracją, aby propagacja była jak najszybsza.
5. Zmiana delegacji DNS
Po zakończeniu migracji plików i upewnieniu się, że wszystko działa poprawnie na nowym serwerze, zmień delegację DNS.
W panelu zarządzania domeną zaktualizuj wpisy DNS, aby wskazywały na nowy serwer. Propagacja może zająć od kilku minut do 48 godzin, ale zazwyczaj jest szybsza, jeśli TTL był niski.
Migracja PrestaShop na nowy serwer przy minimalnych przestojach wymaga dokładnego planowania i testowania. Kluczowe jest wykonanie backupu bazy danych, odtworzenie jej na nowym serwerze, zmiana konfiguracji, a następnie przegranie plików i aktualizacja DNS. Postępując zgodnie z powyższymi krokami, możesz zminimalizować czas przestoju i zapewnić ciągłość działania sklepu.
Aby przyspieszyć proces migracji i zminimalizować przestoje, warto zmienić wartość TTL (Time To Live) rekordu A DNS przed rozpoczęciem migracji. TTL określa, jak długo informacje o rekordzie DNS są przechowywane w pamięci podręcznej serwerów DNS. Skrócenie tej wartości sprawia, że serwery DNS częściej odświeżają informacje, co przyspiesza propagację zmian.
Niezbędne ciasteczka umożliwiają prawidłowe funkcjonowanie strony internetowej, zapewniając podstawowe funkcje, takie jak nawigacja po stronie i dostęp do jej zabezpieczonych obszarów. Bez tych ciasteczek strona nie może działać prawidłowo.
Niezbędne ciasteczka umożliwiają prawidłowe funkcjonowanie strony internetowej, zapewniając podstawowe funkcje, takie jak nawigacja po stronie i dostęp do jej zabezpieczonych obszarów. Bez tych ciasteczek strona nie może działać prawidłowo.
Wyrażam zgodę na wykorzystywanie plików cookie Google Analytics w celu prowadzenia anonimowych statystyk, analizy sposobu korzystania ze strony oraz jej ulepszania, przy czym część danych może być także używana przez Google do personalizacji i pomiaru skuteczności reklam.
Wyrażam zgodę na wykorzystywanie przez Google plików cookie i podobnych technologii w celu wyświetlania reklam spersonalizowanych, pomiaru ich skuteczności oraz zapewnienia bezpieczeństwa strony poprzez odróżnianie użytkowników od botów.
Ciasteczka (cookies) to małe pliki tekstowe, które mogą być wykorzystywane przez strony internetowe, by usprawnić doświadczenie użytkownika. Zgodnie z przepisami prawa, możemy przechowywać na Twoim urządzeniu ciasteczka, które są ściśle niezbędne do funkcjonowania tej strony. W przypadku wszystkich innych typów ciasteczek potrzebujemy Twojej zgody. Oznacza to, że ciasteczka klasyfikowane jako niezbędne są przetwarzane na podstawie art. 6 ust. 1 lit. f RODO. Wszystkie pozostałe ciasteczka, czyli te z kategorii preferencji i marketingu, są przetwarzane na podstawie art. 6 ust. 1 lit. a RODO. Nasza strona korzysta z różnych rodzajów ciasteczek. Niektóre ciasteczka są umieszczane przez usługi stron trzecich, które pojawiają się na naszych stronach. W każdej chwili możesz zmienić lub wycofać swoją zgodę z Oświadczenia o ciasteczkach na naszej stronie internetowej. Dowiedz się więcej o tym, kim jesteśmy, jak możesz się z nami skontaktować i jak przetwarzamy dane osobowe, zapoznając się z naszą Polityką Prywatności.