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