Migracja PrestaShop – jak przenieść PrestaShop na inny serwer bez przestojów

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).

Wyzwanie migracji PrestaShop przy minimalnych przestojach

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.

Przygotowanie do migracji

  • Baza danych MySQL: 5 GB
  • Czas wykonania backupu i odtworzenia: 30 minut
  • Najmniej ruchu między godziną 2 a 4 w nocy

    IP na firewallu jest przepuszczone do bazy, dostęp jest – możemy zaczynać.

    Kroki migracji PrestaShop

    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.sql

    Skopiuj plik backupu na nowy serwer:

    scp backup.sql user@newserver:/path/to/destination

    Odtwórz bazę na nowym serwerze:

    mysql -u user -p new_database_name < /path/to/destination/backup.sql

    2. 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.

    Podsumowanie migracji PrestaShop

    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.

    Ważne przed przystąpieniem do migracji 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.

    Zamów wycenę
    Polityka prywatności | Regulamin
    Pro-link 2005-2020

    Ta strona korzysta z ciasteczek

    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

    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.

    Zgoda na Analitykę

    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.

    Zgoda na Reklamy spersonalizowane

    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.

    Informacje

    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.