Samouczek: migrowanie w trybie offline z usługi Google Cloud SQL for PostgreSQL do usługi Azure Database for PostgreSQL za pomocą usługi migracji
W tym artykule opisano sposób migrowania bazy danych PostgreSQL z usługi Google Cloud SQL for PostgreSQL do usługi Azure Database for PostgreSQL w trybie offline.
Usługa migracji w usłudze Azure Database for PostgreSQL to w pełni zarządzana usługa zintegrowana z witryną Azure Portal i interfejsem wiersza polecenia platformy Azure. Została zaprojektowana tak, aby uprościć migrację do serwera usługi Azure Database for PostgreSQL.
- Wymagania wstępne
- Przeprowadzanie migracji
- Monitorowanie migracji
- Sprawdzanie migracji po zakończeniu
Wymagania wstępne
Do ukończenia migracji potrzebne są następujące wymagania wstępne:
Przed rozpoczęciem migracji z usługą migracji usługi Azure Database for PostgreSQL należy spełnić następujące wymagania wstępne, specjalnie zaprojektowane pod kątem scenariuszy migracji w trybie offline.
- Weryfikowanie wersji źródłowej
- Konfigurowanie konfiguracji docelowej
- Konfigurowanie konfiguracji sieci
- Włączanie rozszerzeń
- Sprawdzanie parametrów serwera
- Sprawdzanie użytkowników i ról
- Wyłączanie wysokiej dostępności (niezawodności) i replik do odczytu w obiekcie docelowym
Weryfikowanie wersji źródłowej
Źródłowa wersja serwera PostgreSQL musi być w wersji 9.5 lub nowszej.
Jeśli źródłowa wersja bazy danych PostgreSQL jest mniejsza niż 9.5, przed rozpoczęciem migracji uaktualnij ją do wersji 9.5 lub nowszej.
Uwaga
Usługa migracji w usłudze Azure Database for PostgreSQL obsługuje połączenia przy użyciu adresu IP źródłowego usługi Google Cloud SQL for PostgreSQL. Format myproject:myregion:myinstance
nie jest obsługiwany.
Konfigurowanie konfiguracji docelowej
Przed rozpoczęciem migracji należy skonfigurować usługę Azure Database for PostgreSQL na platformie Azure.
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.
Konfigurowanie konfiguracji 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 uruchom ponownie usługę Azure Database for PostgreSQL, aby w razie potrzeby zastosować nową konfigurację.
Sprawdzanie użytkowników i ról
Podczas migracji do usługi Azure Database for PostgreSQL niezbędne jest oddzielne rozwiązanie migracji użytkowników i ról, ponieważ wymagają one interwencji ręcznej:
Ręczna migracja użytkowników i ról: użytkownicy i skojarzone z nimi role muszą zostać ręcznie zmigrowane do usługi Azure Database for PostgreSQL. Aby ułatwić ten proces, możesz użyć
pg_dumpall
narzędzia z flagą--globals-only
w celu wyeksportowania obiektów globalnych, takich jak role i konta użytkowników. Wykonaj następujące polecenie, zastępując<<username>>
ciąg rzeczywistą nazwą użytkownika i<<filename>>
żądaną nazwą pliku wyjściowego:pg_dumpall --globals-only -U <<username>> -f <<filename>>.sql
Ograniczenie ról superużytkownika: usługa Azure Database for PostgreSQL nie obsługuje ról administratora. W związku z tym użytkownicy z uprawnieniami administratora muszą mieć te uprawnienia usunięte przed migracją. Upewnij się, że odpowiednio dostosujesz uprawnienia i role.
Wykonując te kroki, możesz upewnić się, że konta użytkowników i role są prawidłowo migrowane do usługi Azure Database for PostgreSQL bez napotykania problemów związanych z ograniczeniami administratora.
Wyłączanie wysokiej dostępności (niezawodności) i replik do odczytu w obiekcie docelowym
Wyłączenie wysokiej dostępności (niezawodności) i odczytywanie replik 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.
Przeprowadzanie migracji
Migrację można przeprowadzić przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.
Witryna Azure Portal oferuje proste i intuicyjne środowisko oparte na kreatorze, które przeprowadzi Cię przez migrację. Wykonując kroki opisane w tym samouczku, możesz bezproblemowo przenieść bazę danych do usługi Azure Database for PostgreSQL — serwer elastyczny i korzystać z zaawansowanych funkcji i skalowalności.
Aby przeprowadzić migrację za pomocą witryny Azure Portal, należy najpierw skonfigurować zadanie migracji, nawiązać połączenie ze źródłem i obiektem docelowym, a następnie przeprowadzić migrację.
Konfigurowanie zadania migracji
Usługa migracji zawiera proste środowisko oparte na kreatorze w witrynie Azure Portal.
Otwórz przeglądarkę internetową i przejdź do portalu. Wprowadź swoje poświadczenia, aby się zalogować. Widok domyślny to pulpit nawigacyjny usług.
Przejdź do usługi Azure Database for the PostgreSQL — serwer elastyczny.
Na karcie Przegląd serwera elastycznego w menu po lewej stronie przewiń w dół do pozycji Migracja i wybierz go.
Wybierz przycisk Utwórz, aby przeprowadzić migrację z usługi Google Cloud SQL for PostgreSQL do serwera elastycznego.
Uwaga
Przy pierwszym użyciu usługi migracji zostanie wyświetlona pusta siatka z monitem o rozpoczęcie pierwszej migracji.
Jeśli migracje do obiektu docelowego serwera elastycznego zostały już utworzone, siatka zawiera teraz informacje o próbach migracji.
Wybierz przycisk Utwórz, aby przejść przez serię kart opartych na kreatorze w celu przeprowadzenia migracji.
Ustawienia
Użytkownik musi podać wiele szczegółów związanych z migracją, takich jak nazwa migracji, typ serwera źródłowego, opcja i tryb.
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 łącznika (-). Nazwa nie może zaczynać się od łącznika i powinna być unikatowa dla serwera docelowego. Brak dwóch migracji do tego samego obiektu docelowego serwera elastycznego może mieć taką samą nazwę.
Typ serwera źródłowego — w zależności od źródła postgreSQL możesz wybrać pozycję Google Cloud SQL for PostgreSQL.
Opcja migracji — umożliwia przeprowadzenie walidacji przed wyzwoleniem migracji. Możesz wybrać dowolną z następujących opcji:
- Weryfikacja — sprawdza gotowość serwera i bazy danych do migracji do miejsca docelowego.
- Migrowanie — pomija walidacje i uruchamia migracje.
- Weryfikowanie i migrowanie — przeprowadza walidację przed wyzwoleniem migracji. Jeśli nie ma żadnych niepowodzeń walidacji, migracja zostanie wyzwolona.
Wybranie opcji Weryfikuj lub Zweryfikuj i migrację jest zawsze dobrym rozwiązaniem w zakresie przeprowadzania weryfikacji premii przed uruchomieniem migracji.
Aby dowiedzieć się więcej na temat weryfikacji premigration, odwiedź stronę premigration.
- Tryb migracji umożliwia wybranie trybu migracji. Tryb offline jest opcją domyślną.
Wybierz przycisk Dalej: Połącz ze źródłem.
Wybierz pozycję Serwer środowiska uruchomieniowego
Serwer środowiska uruchomieniowego migracji to wyspecjalizowana funkcja w ramach usługi migracji, 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.
Nawiązywanie połączenia ze źródłem
Na karcie Połącz ze źródłem zostanie wyświetlony monit o podanie szczegółów dotyczących źródła wybranego na karcie Konfiguracja, które jest źródłem baz danych.
- Nazwa serwera — podaj nazwę hosta lub adres IP źródłowego wystąpienia bazy danych PostgreSQL
- Port — numer portu serwera źródłowego
- Nazwa logowania administratora serwera — nazwa użytkownika źródłowego serwera PostgreSQL
- Hasło — hasło źródłowego serwera PostgreSQL
- Tryb SSL — obsługiwane wartości są preferowane i wymagane. Gdy źródłowy serwer PostgreSQL jest wyłączony, użyj parametru SSLMODE=prefer. Jeśli protokół SSL na serwerze źródłowym jest włączony, użyj parametru SSLMODE=require. Wartości SSL można określić w pliku postgresql.conf.
- Połączenie testowe — wykonuje test łączności między miejscem docelowym i źródłem. Po pomyślnym nawiązaniu połączenia użytkownicy mogą przejść do następnego kroku; muszą zidentyfikować problemy z siecią między elementem docelowym a źródłem i zweryfikować nazwę użytkownika/hasło dla źródła. Nawiązywanie połączenia testowego trwa kilka minut.
Po pomyślnym połączeniu testowym wybierz przycisk Dalej: wybierz pozycję Docelowy migracji.
Wybieranie miejsca docelowego migracji
Na karcie Wybierz miejsce docelowe migracji są wyświetlane metadane elementu docelowego serwera elastycznego, takie jak nazwa subskrypcji, grupa zasobów, nazwa serwera, lokalizacja i wersja bazy danych PostgreSQL.
- Nazwa użytkownika administratora — nazwa użytkownika administratora docelowego serwera PostgreSQL
- Hasło — hasło docelowego serwera PostgreSQL
- Niestandardowa nazwa FQDN/adres IP (opcjonalnie): niestandardowe pole 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 jakflexibleserver.postgres.database.azure.com
, jeśli niestandardowy serwer DNS zawiera strefępostgres.database.azure.com
DNS lub przekazuje zapytania dla tej strefy do168.63.129.16
, gdzie nazwa FQDN jest rozpoznawana w publicznej lub prywatnej strefie DNS platformy Azure. - Testuj połączenie — wykonuje test łączności między miejscem docelowym i źródłem. Po pomyślnym nawiązaniu połączenia użytkownicy mogą przejść do następnego kroku. W przeciwnym razie musimy zidentyfikować problemy z siecią między elementem docelowym a źródłem i zweryfikować nazwę użytkownika/hasło elementu docelowego. Połączenie testowe trwa kilka minut, aby nawiązać połączenie między obiektem docelowym a źródłem
Po pomyślnym połączeniu testowym wybierz pozycję Dalej: Wybierz bazy danych do migracji
Wybieranie bazy danych na potrzeby migracji
Na karcie Wybierz bazę danych do migracji możesz wybrać listę baz danych użytkowników do migracji ze źródłowego serwera PostgreSQL.
Po wybraniu baz danych wybierz pozycję Dalej: Podsumowanie
Podsumowanie
Karta Podsumowanie zawiera podsumowanie wszystkich szczegółów źródłowych i docelowych dotyczących tworzenia walidacji lub migracji. Przejrzyj szczegóły i wybierz przycisk Rozpocznij walidację i migrację.
Monitorowanie migracji
Po wybraniu przycisku Rozpocznij walidację i migrację zostanie wyświetlone powiadomienie w ciągu kilku sekund, aby stwierdzić, że weryfikacja lub tworzenie migracji zakończy się pomyślnie. Nastąpi przekierowanie do wystąpienia strony migracji serwera elastycznego. Wpis znajduje się w stanie InProgress i podstanu PerformingPreRequisiteSteps . Skonfigurowanie infrastruktury migracji i sprawdzenie połączeń sieciowych w przepływie pracy trwa 2–3 minuty.
Siatka wyświetlającą migracje ma następujące kolumny: Nazwa, Stan, Tryb migracji, Typ migracji, Serwer źródłowy, Typ serwera źródłowego, Bazy danych, Czas trwania i Godzina rozpoczęcia. Wpisy są wyświetlane w kolejności malejącej godziny rozpoczęcia z najnowszym wpisem u góry. Możesz użyć przycisku odświeżania, aby odświeżyć stan weryfikacji lub uruchomienia migracji.
Szczegóły migracji
Wybierz nazwę migracji w siatce, aby wyświetlić skojarzone szczegóły.
Na karcie Konfiguracja wybraliśmy opcję migracji jako Weryfikuj i migruj. W tym scenariuszu walidacje są wykonywane najpierw przed rozpoczęciem migracji. Po zakończeniu podłożenia PerformingPreRequisiteSteps przepływ pracy przechodzi do gruntu 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.
Szczegóły weryfikacji są dostępne na poziomie wystąpienia i bazy danych.
Walidacja na poziomie wystąpienia
- Zawiera walidację związaną z sprawdzaniem łączności, wersją źródłową, czyli wersją >bazy danych PostgreSQL = 9.5, sprawdzaniem parametrów serwera, czy rozszerzenia są włączone w parametrach serwera usługi Azure Database for PostgreSQL — serwer elastyczny.
Walidacja na poziomie bazy danych
- Zawiera walidację poszczególnych baz danych związanych z rozszerzeniami i obsługą sortowania w usłudze Azure Database for PostgreSQL— elastycznym serwerze.
Stan weryfikacji i migracji można wyświetlić na stronie szczegółów migracji.
Niektóre możliwe stany migracji:
Stany migracji
Stan | opis |
---|---|
Ruch przychodzący | Trwa konfigurowanie infrastruktury migracji lub trwa rzeczywista migracja danych. |
Anulowane | Migracja zostanie anulowana lub usunięta. |
Nie działa | Migracja nie powiodła się. |
Walidacja nie powiodła się | Walidacja nie powiodła się. |
Powodzenie | Migracja zakończyła się pomyślnie i została ukończona. |
OczekiwanieForUserAction | Dotyczy tylko migracji online. Oczekiwanie na wykonanie akcji jednorazowej przez użytkownika. |
Podstany migracji
Podstan | opis |
---|---|
PerformingPreRequisiteSteps | Trwa konfigurowanie infrastruktury na potrzeby migracji danych. |
Walidacja w toku | Walidacja jest w toku. |
Migrowanie danych | Migracja danych jest w toku. |
UkończenieMigration | Migracja jest na ostatnim etapie ukończenia. |
Zakończono | Migracja została ukończona. |
Nie działa | Migracja nie powiodła się. |
Podstany walidacji
Podstan | opis |
---|---|
Nie działa | Walidacja nie powiodła się. |
Powodzenie | Walidacja zakończyła się pomyślnie. |
Ostrzeżenie | Walidacja jest ostrzegawcza. |
Anulowanie migracji
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 migracji powoduje zatrzymanie dalszego działania migracji na serwerze docelowym i przejście do stanu Anulowano . Akcja anulowania powoduje wycofanie wszystkich zmian wprowadzonych przez usługę migracji na serwerze docelowym.
Sprawdzanie migracji po zakończeniu
Po ukończeniu baz danych należy ręcznie zweryfikować dane między źródłem i obiektem docelowym i sprawdzić, czy wszystkie obiekty w docelowej bazie danych zostały pomyślnie utworzone.
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.