Samouczek: migrowanie offline z usługi Amazon Aurora 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 Amazon Aurora 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 usługi Azure Database for PostgreSQL.
W tym samouczku zostały wykonane następujące czynności:
- Pełne wymagania wstępne
- Inicjowanie migracji
- Monitorowanie migracji
- Weryfikowanie migracji
Wymagania wstępne
Przed rozpoczęciem migracji przy użyciu usługi migracji w usłudze Azure Database for PostgreSQL należy spełnić następujące wymagania wstępne. Te wymagania wstępne zostały specjalnie zaprojektowane na potrzeby 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 starsza niż 9.5, przed rozpoczęciem migracji uaktualnij wersję do wersji 9.5 lub nowszej.
Konfigurowanie konfiguracji docelowej
Przed rozpoczęciem migracji należy utworzyć wystąpienie usługi Azure Database for PostgreSQL na platformie Azure. Jednostka SKU aprowizowana dla usługi Azure Database for PostgreSQL — serwer elastyczny powinna być zgodna ze źródłem.
Aby uzyskać więcej informacji, zobacz Tworzenie wystąpienia usługi Azure Database for PostgreSQL.
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 serwerem docelowym w usłudze Azure Database for PostgreSQL.
Aby uzyskać informacje na temat konfiguracji sieci, zobacz Scenariusze sieciowe 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
Parametry serwera 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 wystąpienia usługi Azure Database for PostgreSQL. W witrynie Azure Portal przejdź do pozycji Parametry serwera i ręcznie zaktualizuj wartości.
Zapisz zmiany parametru i uruchom ponownie wystąpienie usługi Azure Database for PostgreSQL, aby w razie potrzeby zastosować nową konfigurację.
Sprawdzanie użytkowników i ról
W przypadku 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 wystąpienia usługi Azure Database for PostgreSQL. Aby ułatwić ten proces, możesz użyć narzędzia pg_dumpall z flagą
--globals-only
w celu wyeksportowania obiektów globalnych, takich jak role i konta użytkowników.Uruchom następujące polecenie. Zastąp
<username>
ciąg rzeczywistą nazwą użytkownika i zastąp<filename>
ciąg nazwą, której chcesz użyć dla pliku wyjściowego.pg_dumpall --globals-only -U <username> -f <filename>.sql
Ograniczenie ról administratora: usługa Azure Database for PostgreSQL nie obsługuje ról administratora. Przed migracją należy usunąć uprawnienia administratora. 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 problemów związanych z ograniczeniami administratora.
Wyłączanie wysokiej dostępności (niezawodności) i replik do odczytu w obiekcie docelowym
Przed rozpoczęciem migracji należy wyłączyć wysoką dostępność (niezawodność) i repliki do odczytu w środowisku docelowym. Te funkcje powinny być włączone dopiero po zakończeniu migracji.
Inicjowanie 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ę przy użyciu witryny Azure Portal, najpierw skonfiguruj zadanie migracji. Następnie połącz się ze źródłem i obiektem docelowym i zainicjuj migrację.
Konfigurowanie zadania migracji
Aby skonfigurować zadanie migracji w witrynie Azure Portal:
Otwórz przeglądarkę internetową i przejdź do witryny Azure Portal. Wprowadź swoje poświadczenia, aby się zalogować.
Przejdź do wystąpienia usługi Azure Database for PostgreSQL — serwer elastyczny.
W menu usługi wybierz pozycję Migracja.
Wybierz pozycję Utwórz , aby przeprowadzić migrację z usługi Amazon Aurora do serwera elastycznego.
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 informacje o próbach migracji.
Wybierz pozycję Utwórz , aby przejść przez serię kart, aby skonfigurować migrację.
Ustawienia
Wprowadź lub wybierz następujące informacje:
Nazwa migracji: wprowadź unikatowy identyfikator dla każdej migracji do tego obiektu docelowego serwera elastycznego. W nazwie migracji można używać tylko znaków alfanumerycznych i łączników (
-
). Nazwa nie może zaczynać się od łącznika i musi 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: wybierz typ źródła, który odpowiada źródle bazy danych PostgreSQL, takie jak oparta na chmurze usługa PostgreSQL, konfiguracja lokalna lub maszyna wirtualna.
Opcja migracji: wybierz jedną z następujących opcji weryfikacji przed migracją:
- Zweryfikuj. Sprawdza gotowość serwera i bazy danych do migracji do źródła docelowego.
- Migrowanie. Pomija walidację i rozpoczyna migrację.
- Weryfikowanie i migrowanie. Przeprowadza walidację przed wyzwoleniem migracji. Jeśli nie ma żadnych niepowodzeń walidacji, migracja zostanie wyzwolona.
Dobrym rozwiązaniem jest wybranie opcji Weryfikuj lub Zweryfikuj i migruj na potrzeby weryfikacji przed migracją.
Aby uzyskać więcej informacji, zobacz Weryfikacje premigration.
Tryb migracji: wybierz tryb migracji. Opcja domyślna to Offline.
Wybierz pozycję Dalej: Połącz ze źródłem.
Wybierz serwer środowiska uruchomieniowego
Serwer środowiska uruchomieniowego migracji to wyspecjalizowana funkcja usługi migracji. Serwer środowiska uruchomieniowego działa jako serwer pośredniczący podczas migracji. Jest to oddzielne wystąpienie usługi Azure Database for PostgreSQL — serwer elastyczny, który nie jest serwerem docelowym. Serwer środowiska uruchomieniowego ułatwia migrację baz danych ze środowiska źródłowego, które jest dostępne tylko za pośrednictwem sieci prywatnej.
Aby uzyskać więcej informacji, zobacz Serwer środowiska uruchomieniowego migracji.
Nawiązywanie połączenia ze źródłem
Na karcie Połącz ze źródłem wprowadź lub wybierz następujące informacje dla źródła bazy danych:
- Nazwa serwera: wprowadź nazwę hosta lub adres IP źródłowego wystąpienia bazy danych PostgreSQL.
- Port: wprowadź numer portu serwera źródłowego.
- Nazwa logowania administratora serwera: wprowadź nazwę użytkownika źródłowego serwera PostgreSQL.
- Hasło: wprowadź hasło źródłowego serwera PostgreSQL.
- Tryb SSL: Obsługiwane wartości to Preferuj i Wymagaj. Gdy protokół SSL (Secure Sockets Layer) na źródłowym serwerze PostgreSQL jest wyłączony, wybierz pozycję Preferuj. Jeśli protokół SSL na serwerze źródłowym jest włączony, wybierz pozycję Wymagaj. Wartości SSL są ustawiane w pliku postgresql.conf .
- Połączenie testowe: inicjuje test łączności między miejscem docelowym a źródłem. Po pomyślnym nawiązaniu połączenia przejdź do następnego kroku, aby zidentyfikować problemy z siecią między elementem docelowym i źródłem oraz zweryfikować nazwę użytkownika i hasło dla źródła. Nawiązywanie połączenia testowego trwa kilka minut.
Po pomyślnym połączeniu testowym wybierz pozycję Dalej: wybierz docelową migrację.
Wybierz cel migracji
Na karcie Wybieranie miejsca docelowego migracji wprowadź lub wybierz następujące informacje dotyczące obiektu docelowego serwera elastycznego, oprócz subskrypcji, grupy zasobów i nazwy serwera:
- 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. - Połączenie testowe: inicjuje test łączności między miejscem docelowym a źródłem. Po pomyślnym nawiązaniu połączenia przejdź do następnego kroku, aby zidentyfikować problemy z siecią między obiektem docelowym i źródłem oraz zweryfikować nazwę użytkownika i hasło serwera docelowego. Nawiązywanie połączenia testowego trwa kilka minut.
Po pomyślnym połączeniu testowym wybierz pozycję Dalej: wybierz bazy danych do migracji.
Wybieranie baz danych na potrzeby migracji
Na karcie Wybierz bazę danych do migracji wybierz z listy baz danych użytkowników, które mają być migrowane z ź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, a następnie wybierz pozycję Rozpocznij walidację i migrację.
Monitorowanie migracji
W ciągu kilku sekund po wybraniu pozycji Rozpocznij walidację i migrację zostanie wyświetlone powiadomienie informujące o pomyślnym zakończeniu weryfikacji lub utworzenia migracji. Nastąpi przekierowanie do okienka Migracja wystąpienia serwera elastycznego. Wpis stanu to InProgress , a podstan to PerformingPreRequisiteSteps. Skonfigurowanie infrastruktury migracji i sprawdzenie połączeń sieciowych w przepływie pracy trwa od 2 do 3 minut.
Siatka zawierająca migracje zawiera następujące kolumny:
- Nazwa/nazwisko
- Stan
- Tryb migracji
- Typ migracji
- Serwer źródłowy
- Typ serwera źródłowego
- Bazy danych
- Czas trwania
- Godzina rozpoczęcia
Wpisy są wyświetlane w kolejności malejącej czasu rozpoczęcia z najnowszym wpisem u góry. Możesz wybrać pozycję Odśwież na pasku menu, aby odświeżyć stan weryfikacji lub uruchomienia migracji.
Szczegóły migracji
Na liście migracji wybierz nazwę migracji, aby wyświetlić skojarzone szczegóły.
Na karcie Instalator wybierz opcję migracji Zweryfikuj i migruj. W tym scenariuszu walidacje są wykonywane 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.
Szczegóły weryfikacji można sprawdzić na poziomie wystąpienia i na poziomie bazy danych:
Walidacja na poziomie wystąpienia:
- Sprawdź walidację związaną z sprawdzaniem łączności dla wersji źródłowej (
PostgreSQL version >= 9.5
sprawdzanie parametru serwera), czy rozszerzenia są włączone w parametrach serwera wystąpienia usługi Azure Database for PostgreSQL — serwer elastyczny.
- Sprawdź walidację związaną z sprawdzaniem łączności dla wersji źródłowej (
Walidacja na poziomie bazy danych:
- Sprawdź walidację poszczególnych baz danych związanych z obsługą rozszerzeń i sortowania w usłudze Azure Database for PostgreSQL — serwer elastyczny.
Bieżący stan migracji i walidacji można wyświetlić w okienku szczegółów migracji.
W poniższych tabelach opisano niektóre możliwe stany i podstany 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 migracji 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 | Sprawdzanie poprawności nie powiodło się. |
Powodzenie | Walidacja zakończyła się pomyślnie. |
Ostrzeżenie | Walidacja wyświetla ostrzeżenie. |
Anulowanie migracji
Możesz anulować wszelkie trwające walidacje lub migracje. Aby anulować przepływ pracy, musi mieć stan W toku . Nie można anulować walidacji ani migracji w stanie Powodzenie lub Niepowodzenie .
Anulowanie migracji zatrzymuje dalsze działania migracji na serwerze docelowym i przenosi próbę migracji do stanu Anulowano . Akcja anulowania powoduje wycofanie wszystkich zmian wprowadzonych na serwerze docelowym przez usługę migracji.
Weryfikowanie migracji
Po zakończeniu migracji bazy danych ręcznie zweryfikuj dane między źródłem a obiektem docelowym. Sprawdź, 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 (wersja) 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 do serwera elastycznego.
- 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.