Samouczek: migrowanie z usługi Azure Database for PostgreSQL — pojedynczy serwer do serwera elastycznego za pomocą usługi migracji
DOTYCZY: Azure Database for PostgreSQL — serwer elastyczny
Za pomocą witryny Azure Portal można migrować wystąpienie usługi Azure Database for PostgreSQL — pojedynczy serwer do usługi Azure Database for PostgreSQL — serwer elastyczny. W tym samouczku przeprowadzimy migrację przykładowej bazy danych z pojedynczego serwera usługi Azure Database for PostgreSQL do serwera elastycznego PostgreSQL przy użyciu witryny Azure Portal.
- Konfigurowanie serwera elastycznego usługi Azure Database for PostgreSQL
- Konfigurowanie zadania migracji
- Monitorowanie migracji
- Anulowanie migracji
- Po migracji
Migrację można przeprowadzić za pomocą witryny Azure Portal.
Wymagania wstępne (offline)
Przed rozpoczęciem migracji z usługą migracji w usłudze Azure Database for PostgreSQL należy spełnić następujące wymagania wstępne, które mają zastosowanie do scenariuszy migracji w trybie offline.
Weryfikowanie wersji źródłowej
Źródłowa wersja bazy danych PostgreSQL powinna mieć wartość >= 9.5
. Jeśli źródłowa wersja bazy danych PostgreSQL jest mniejsza niż 9.5
, uaktualnij źródłową wersję bazy danych PostgreSQL do 9.5
lub nowszej przed migracją.
Konfiguracja docelowa
Przed rozpoczęciem procesu migracji należy wdrożyć i prawidłowo skonfigurować serwer elastyczny usługi Azure Database for PostgreSQL.
Jednostka SKU wybrana dla usługi Azure Database for PostgreSQL powinna odpowiadać specyfikacjom źródłowej bazy danych w celu zapewnienia zgodności i odpowiedniej wydajności.
Aby uzyskać szczegółowe instrukcje dotyczące tworzenia nowej usługi Azure Database for PostgreSQL, zapoznaj się z następującym linkiem: Szybki start: tworzenie serwera.
Konfiguracja sieci
Konfiguracja sieci ma kluczowe znaczenie dla usługi migracji do poprawnego działania. Upewnij się, że źródłowy serwer PostgreSQL może komunikować się z docelowym serwerem usługi Azure Database for PostgreSQL. Następujące konfiguracje sieci są niezbędne do pomyślnej migracji.
Aby uzyskać informacje na temat konfiguracji sieci, zobacz Przewodnik po sieci dla usługi migracji.
Włączanie rozszerzeń
Aby zapewnić pomyślną migrację przy użyciu usługi migracji w usłudze Azure Database for PostgreSQL, może być konieczne zweryfikowanie rozszerzeń w źródłowym wystąpieniu bazy danych PostgreSQL. Rozszerzenia udostępniają funkcje i funkcje, które mogą być wymagane dla aplikacji. Przed zainicjowaniem procesu migracji upewnij się, że rozszerzenia są weryfikowane w źródłowym wystąpieniu bazy danych PostgreSQL.
W docelowym wystąpieniu usługi Azure Database for PostgreSQL — serwer elastyczny włącz obsługiwane rozszerzenia, które są identyfikowane w źródłowym wystąpieniu bazy danych PostgreSQL.
Aby uzyskać więcej informacji, zobacz Rozszerzenia w usłudze Azure Database for PostgreSQL.
Uwaga
Ponowne uruchomienie jest wymagane po wprowadzeniu jakichkolwiek zmian w parametrze shared_preload_libraries
.
Sprawdzanie parametrów serwera
Te parametry nie są automatycznie migrowane do środowiska docelowego i muszą być skonfigurowane ręcznie.
Dopasuj wartości parametrów serwera ze źródłowej bazy danych PostgreSQL do usługi Azure Database for PostgreSQL, korzystając z sekcji Parametry serwera w witrynie Azure Portal i ręcznie aktualizując odpowiednio wartości.
Zapisz zmiany parametrów i w razie potrzeby uruchom ponownie serwer elastyczny usługi Azure Database for PostgreSQL, aby zastosować nową konfigurację.
Ważne
Przed zainicjowanie migracji zmień parametr serwera password_encryption na serwerze elastycznym z scRAM-SHA-256 na MD5. Jest to niezbędne, aby istniejące poświadczenia na jednym serwerze działały na serwerze elastycznym.
Wyłączanie wysokiej dostępności (niezawodności) i replik do odczytu w obiekcie docelowym
Wyłączenie wysokiej dostępności (niezawodności) i replik do odczytu w środowisku docelowym jest niezbędne. Te funkcje powinny być włączone dopiero po zakończeniu migracji.
Postępując zgodnie z tymi wytycznymi, można zapewnić bezproblemowy proces migracji bez dodanych zmiennych wprowadzonych przez wysoką dostępność i repliki do odczytu. Po zakończeniu migracji i stabilnej bazie danych możesz włączyć te funkcje, aby zwiększyć dostępność i skalowalność środowiska bazy danych na platformie Azure.
Konfigurowanie elastycznego serwera usługi Azure Database for PostgreSQL
Utwórz docelowy serwer elastyczny. Aby uzyskać instrukcje z przewodnikiem, zapoznaj się z przewodnikiem Szybki start Tworzenie elastycznego serwera usługi Azure Database for PostgreSQL przy użyciu portalu.
Rozszerzenia listy dozwolonych , których biblioteki muszą być ładowane na początku serwera. Ważne jest, aby rozszerzenie było na liście dozwolonych przed zainicjowaniem migracji.
Sprawdź, czy rozkład danych między tabelami bazy danych jest niesymetryczny, a większość danych znajduje się w jednej (lub kilku) tabelach. Jeśli jego niesymetryczność, szybkość migracji może być wolniejsza niż oczekiwano. W takim przypadku szybkość migracji można zwiększyć, migrując dużą tabelę równolegle.
Konfigurowanie zadania migracji
Usługa migracji zawiera proste środowisko oparte na kreatorze w witrynie Azure Portal. Oto jak rozpocząć:
Otwórz przeglądarkę internetową i przejdź do portalu. Aby się zalogować, wprowadź swoje poświadczenia. Widok domyślny to pulpit nawigacyjny usług.
Przejdź do docelowego serwera elastycznego usługi Azure Database for PostgreSQL.
Na karcie Przegląd serwera elastycznego w menu po lewej stronie przewiń w dół do pozycji Migracja i wybierz ją.
Wybierz przycisk Utwórz, aby rozpocząć migrację z pojedynczego serwera na serwer elastyczny. Jeśli używasz usługi migracji po raz pierwszy, zostanie wyświetlona pusta siatka z monitem o rozpoczęcie pierwszej migracji.
Jeśli już utworzono migracje do obiektu docelowego serwera elastycznego, siatka zawiera informacje o migracjach, które próbowano wykonać z pojedynczego serwera.
Przechodzisz przez serię kart opartych na kreatorze, aby utworzyć migrację do tego docelowego serwera elastycznego z różnych możliwych źródeł. Domyślnie typ serwera źródłowego jest ustawiony na pojedynczy serwer usługi Azure Database for PostgreSQL, który jest interesujący nas w tym scenariuszu.
Alternatywnie możesz zainicjować proces migracji z pojedynczego serwera usługi Azure Database for PostgreSQL.
Otwórz przeglądarkę internetową i przejdź do portalu. Aby się zalogować, musisz wprowadzić swoje poświadczenia. Widok domyślny to pulpit nawigacyjny usług.
Po wybraniu pojedynczego serwera możesz obserwować baner związany z migracją na karcie Przegląd. Wybierz pozycję Migruj teraz , aby rozpocząć pracę.
Zostanie wyświetlona strona z dwiema opcjami. Jeśli serwer elastyczny został już utworzony i chcesz go użyć jako miejsca docelowego, wybierz pozycję Wybierz istniejącą, a następnie wybierz odpowiednie szczegóły subskrypcji, grupy zasobów i nazwy serwera. Po wybraniu opcji wybierz pozycję Przejdź do kreatora migracji i postępuj zgodnie z instrukcjami w sekcji Konfiguracja .
Jeśli zdecydujesz się utworzyć nowy serwer elastyczny, wybierz pozycję Utwórz nowy i wybierz pozycję Przejdź do utworzenia kreatora. Ta akcja powoduje przejście przez proces tworzenia serwera elastycznego i wdrożenie serwera elastycznego.
Po wdrożeniu serwera elastycznego wykonaj kroki od 3 do 5 w obszarze Konfigurowanie zadania migracji.
Ustawienia
Pierwszą kartą jest Konfiguracja. Jeśli pominięto je, przed zainicjowaniem migracji należy utworzyć listę dozwolonych niezbędnych rozszerzeń zgodnie z opisem w temacie Konfigurowanie serwera elastycznego usługi Azure Database for PostgreSQL.
Nazwa migracji jest unikatowym identyfikatorem każdej migracji do tego docelowego serwera elastycznego. To pole akceptuje tylko znaki alfanumeryczne i nie akceptuje żadnych znaków specjalnych, z wyjątkiem podkreślenia (_) i łącznika (-). Nazwa musi zaczynać się od znaku alfanumerycznego. Nazwa musi być również unikatowa dla serwera docelowego, ponieważ żadne dwie migracje do tego samego obiektu docelowego serwera elastycznego mogą mieć taką samą nazwę.
Typ serwera źródłowego wskazuje źródło. W tym przypadku jest to pojedynczy serwer usługi Azure Database for PostgreSQL
Opcja migracji umożliwia przeprowadzenie walidacji przed wyzwoleniem migracji. Możesz wybrać dowolną z poniższych opcji.
- Weryfikacja — sprawdza gotowość serwera i bazy danych do migracji do miejsca docelowego.
- Migrowanie — pomija walidację i rozpoczyna migrację.
- Weryfikowanie i migrowanie — przeprowadza walidację przed wyzwoleniem migracji. Migracja jest wyzwalana tylko wtedy, gdy nie ma żadnych błędów walidacji.
Zawsze dobrym rozwiązaniem jest wybranie opcji Weryfikuj lub Zweryfikuj i migruj, aby przeprowadzić weryfikacje premii przed uruchomieniem migracji.
Tryb migracji umożliwia wybranie między migracją w trybie online a migracją w trybie offline, w tym przypadku musi być ustawiona na wartość Offline.
Wybierz przycisk Dalej: Wybierz pozycję Serwer środowiska uruchomieniowego.
Serwer środowiska uruchomieniowego
Serwer środowiska uruchomieniowego migracji to wyspecjalizowana funkcja w ramach usługi migracji w usłudze Azure Database for PostgreSQL, która jest przeznaczona do działania jako serwer pośredniczący podczas migracji. Jest to oddzielne wystąpienie usługi Azure Database for PostgreSQL — serwer elastyczny, które nie jest serwerem docelowym, ale służy do ułatwiania migracji baz danych ze środowiska źródłowego, które jest dostępne tylko za pośrednictwem sieci prywatnej.
Aby uzyskać więcej informacji na temat serwera środowiska uruchomieniowego, odwiedź serwer środowiska uruchomieniowego migracji.
Wybierz przycisk Dalej: Połącz ze źródłem.
Nawiązywanie połączenia ze źródłem
W sekcji Źródło zostanie wyświetlony monit o podanie szczegółów związanych z pojedynczym serwerem, który jest źródłem baz danych.
Po wybraniu opcji Subskrypcja i Grupa zasobów lista rozwijana nazw serwerów zawiera pozycje Pojedyncze serwery w tej grupie zasobów w różnych regionach. Wybierz źródło, z którego chcesz przeprowadzić migrację baz danych. Bazy danych można migrować z pojedynczego serwera do docelowego serwera elastycznego w tym samym regionie. Migracje między regionami są włączone tylko dla serwerów Indie, Chiny i Zjednoczone Emiraty ZjednoczoneGo Emiratów.
Po wybraniu źródła pojedynczego serwera pola Lokalizacja i Wersja bazy danych PostgreSQL zostaną wypełnione automatycznie. Upewnij się, że podajesz poświadczenia roli administratora, ponieważ jest to wymagane do pomyślnej migracji baz danych przez usługę migracji.
Pole Niestandardowa nazwa FQDN/ip jest opcjonalne i może być używane, gdy źródło znajduje się za niestandardowym serwerem DNS lub ma niestandardowe przestrzenie nazw DNS, dzięki czemu jest dostępny tylko za pośrednictwem określonych nazw FQDN lub adresów IP. Na przykład może to obejmować wpisy, takie jak singleserver.example.com
, 198.1.0.2
lub nazwa FQDN postgreSQL, takie jak singleserver.postgres.database.azure.com
, jeśli niestandardowy serwer DNS zawiera strefę postgres.database.azure.com
DNS lub przekazuje zapytania dla tej strefy do 168.63.129.16
, gdzie nazwa FQDN jest rozpoznawana w publicznej lub prywatnej strefie DNS platformy Azure.
Po wypełnieniu wszystkich pól wybierz link Połącz ze źródłem . Sprawdza, czy wprowadzone szczegóły serwera źródłowego są poprawne i czy serwer źródłowy jest osiągalny.
Wybierz przycisk Dalej: Wybierz docelowy obiekt migracji, aby kontynuować.
Wybieranie miejsca docelowego migracji
W sekcji Wybierz miejsce docelowe migracji są wyświetlane metadane dla obiektu docelowego serwera elastycznego, takie jak subskrypcja, grupa zasobów, nazwa serwera, lokalizacja i wersja bazy danych PostgreSQL.
Pole Niestandardowe nazwy FQDN/IP jest opcjonalne i może być używane, gdy obiekt docelowy znajduje się za niestandardowym serwerem DNS lub ma niestandardowe przestrzenie nazw DNS, dzięki czemu jest dostępny tylko za pośrednictwem określonych nazw FQDN lub adresów IP. Na przykład może to obejmować wpisy, takie jak flexibleserver.example.com
, 198.1.0.2
lub nazwa FQDN postgreSQL, takie jak flexibleserver.postgres.database.azure.com
, jeśli niestandardowy serwer DNS zawiera strefę postgres.database.azure.com
DNS lub przekazuje zapytania dla tej strefy do 168.63.129.16
, gdzie nazwa FQDN jest rozpoznawana w publicznej lub prywatnej strefie DNS platformy Azure.
Wybierz odpowiednie wartości dla metody uwierzytelniania i wszystkich pól powiązanych z uwierzytelnianiem. Upewnij się, że podana tożsamość jest tożsamością użytkownika administratora na serwerze docelowym. Po wypełnieniu wszystkich wymaganych informacji wybierz link Połącz z obiektem docelowym . Sprawdza, czy wprowadzone szczegóły serwera docelowego są poprawne, a serwer docelowy jest osiągalny.
Wybierz przycisk Dalej: Wybierz bazy danych do migracji, aby wybrać bazy danych do migracji.
Wybieranie baz danych na potrzeby migracji
Na tej karcie znajduje się lista baz danych użytkowników w obrębie pojedynczego serwera. Możesz wybrać i zmigrować maksymalnie osiem baz danych w ramach pojedynczej próby migracji. Jeśli istnieje więcej niż osiem baz danych użytkowników, proces migracji jest powtarzany między serwerami źródłowymi i docelowymi dla następnego zestawu baz danych. Wybrane bazy danych, które istnieją na serwerze docelowym o dokładnie takich samych nazwach, są zastępowane.
Wybierz przycisk Dalej: Podsumowanie, aby przejrzeć szczegóły.
Podsumowanie
Karta Podsumowanie zawiera podsumowanie wszystkich szczegółów dotyczących tworzenia weryfikacji lub migracji. Przejrzyj szczegóły i wybierz przycisk Rozpocznij walidację i migrację .
Monitorowanie portalu migracji
Po rozpoczęciu migracji zostanie wyświetlone powiadomienie informujące o pomyślnym zakończeniu weryfikacji lub utworzenia migracji. Nastąpi automatyczne przekierowanie do strony Migracja serwera elastycznego. Ma to nowy wpis dla ostatnio utworzonej weryfikacji lub migracji.
Siatka, która wyświetla migracje, ma następujące kolumny: Nazwa, Stan, Tryb migracji, Typ migracji, Serwer źródłowy, Typ serwera źródłowego, Bazy danych, Godzina rozpoczęcia i Czas trwania. Wpisy są wyświetlane w kolejności malejącej godziny rozpoczęcia od najnowszego wpisu u góry.
Możesz użyć przycisku Odśwież , aby odświeżyć stan weryfikacji lub migracji.
Możesz również wybrać nazwę jednej konkretnej migracji w siatce, aby wyświetlić skojarzone szczegóły.
Po utworzeniu walidacji lub migracji następuje przejście do stanu InProgress i podstanu PerformingPreRequisiteSteps . Skonfigurowanie infrastruktury migracji i połączeń sieciowych trwa od 2 do 3 minut.
Przyjrzyjmy się, jak monitorować migracje dla każdej opcji migracji.
Sprawdź poprawność
Po zakończeniu podstanu PerformingPreRequisiteSteps walidacja zostanie przeniesiona do podstanu Walidacja w toku , gdzie kontrole są wykonywane na serwerze źródłowym i docelowym w celu oceny gotowości do migracji.
Walidacja zostanie przeniesiona do stanu Powodzenie, jeśli wszystkie walidacje są w stanie Powodzenie lub Ostrzeżenie.
Siatka walidacji zawiera następujące informacje:
- Szczegóły weryfikacji dotyczące wystąpień i szczegółów weryfikacji dla sekcji baz danych reprezentujące reguły weryfikacji używane do sprawdzania gotowości migracji.
- Nazwa walidacji — nazwa każdej konkretnej reguły walidacji.
- Stan weryfikacji — reprezentuje wynik dla każdej reguły i może mieć dowolną z trzech wartości:
- Powodzenie — jeśli nie znaleziono żadnych błędów.
- Niepowodzenie — jeśli występują błędy walidacji.
- Ostrzeżenie — jeśli istnieją ostrzeżenia dotyczące walidacji.
- Czas trwania — czas potrzebny na operację weryfikacji.
- Godzina rozpoczęcia (UTC) i godzina zakończenia (UTC) — czas rozpoczęcia i zakończenia operacji walidacji w formacie UTC.
Stan walidacji jest zmieniany na Stan niepowodzenie, jeśli w weryfikacji występują błędy. Wybierz nazwę weryfikacji lub walidację nazwy bazy danych, która zakończyła się niepowodzeniem, a okienko fan-out zawiera szczegóły i akcję naprawczą, którą należy podjąć, aby uniknąć tego błędu.
Migrate
Po zakończeniu podstanu PerformingPreRequisiteSteps migracja zostanie przeniesiona do podstanu Migrowanie danych podczas klonowania/kopiowania baz danych. Czas ukończenia migracji zależy od rozmiaru i kształtu migrujących baz danych. Migracja jest szybka, jeśli dane są w większości równomiernie dystrybuowane we wszystkich tabelach. Niesymetryczne rozmiary tabeli zajmują stosunkowo dłuższy czas.
Po wybraniu dowolnej bazy danych podczas migracji zostanie wyświetlone okienko fan-out. Zawiera ona wszystkie liczby tabel (skopiowane, w kolejce, kopiowanie i błędy), a także stan migracji bazy danych.
Migracja zostanie przeniesiona do stanu Powodzenie po pomyślnym zakończeniu migracji danych . Jeśli występuje problem ze stanem Migrowanie danych , migracja zostanie przeniesiona do stanu Niepowodzenie .
Po przejściu migracji do stanu Powodzenie schemat i migracja danych z pojedynczego serwera do obiektu docelowego serwera elastycznego zostanie ukończona. Możesz odświeżyć stronę, aby sprawdzić postęp.
Weryfikowanie i migrowanie
W tej opcji walidacje są wykonywane najpierw przed rozpoczęciem migracji. Po zakończeniu podstanu PerformingPreRequisiteSteps przepływ pracy przechodzi do podstanu Walidacja w toku.
- Jeśli walidacja zawiera błędy, migracja zostanie przeniesiona do stanu Niepowodzenie.
- Jeśli walidacja zostanie ukończona bez żadnego błędu, migracja zostanie uruchomiona, a przepływ pracy przejdzie do podstanu Migrowanie danych.
Po zakończeniu operacji można zobaczyć wyniki weryfikacji i migracji .
Anulowanie migracji przy użyciu portalu
Możesz anulować wszelkie trwające walidacje lub migracje. Aby anulować przepływ pracy, musi być w stanie InProgress . Nie można anulować walidacji ani migracji w stanie Powodzenie lub Niepowodzenie .
Anulowanie walidacji powoduje zatrzymanie wszelkich dalszych działań walidacji, a walidacja zostanie przeniesiona do stanu Anulowano .
Anulowanie migracji powoduje zatrzymanie dalszego działania migracji na serwerze docelowym i przejście do stanu Anulowano . Akcja anulowania spowoduje wycofanie wszystkich zmian wprowadzonych przez usługę migracji na serwerze docelowym.
Sprawdzanie migracji po zakończeniu
Po pomyślnej migracji upewnij się, że możesz zalogować się do serwera elastycznego przy użyciu tych samych poświadczeń co na jednym serwerze. Jeśli na serwerze elastycznym występują błędy uwierzytelniania po migracji z jednego serwera, może to być spowodowane tym, że maszyna wirtualna serwera elastycznego jest zgodna ze standardem FIPS lub używa innego algorytmu szyfrowania haseł (SCRAM-SHA-256) w porównaniu z szyfrowaniem MD5 pojedynczego serwera. Aby rozwiązać ten problem, wykonaj poniższe kroki:
- Zmień parametr serwera password_encryption na serwerze elastycznym z SCRAM-SHA-256 na MD5.
- Ponowne inicjowanie migracji z pojedynczego serwera do serwera elastycznego.
- Jeśli problemy z uwierzytelnianiem będą nadal występować, usuń istniejący serwer elastyczny i zaaprowizuj nowy. Powtórz kroki 1 i 2, aby rozwiązać problem.
Powinno to usunąć błędy uwierzytelniania.
Po migracji można wykonać następujące zadania:
Sprawdź dane na serwerze elastycznym i upewnij się, że jest to dokładna kopia wystąpienia źródłowego.
Po weryfikacji włącz opcję wysokiej dostępności na serwerze elastycznym zgodnie z potrzebami.
Zmień jednostkę SKU serwera elastycznego, aby odpowiadała potrzebom aplikacji. Ta zmiana wymaga ponownego uruchomienia serwera bazy danych.
Jeśli zmienisz jakiekolwiek parametry serwera z ich wartości domyślnych w wystąpieniu źródłowym, skopiuj te wartości parametrów serwera na serwerze elastycznym.
Skopiuj inne ustawienia serwera, takie jak tagi, alerty i reguły zapory (jeśli dotyczy) z wystąpienia źródłowego do serwera elastycznego.
Wprowadź zmiany w aplikacji, aby wskazać parametry połączenia serwerowi elastycznemu.
Uważnie monitoruj wydajność bazy danych, aby sprawdzić, czy wymaga dostrajania wydajności.