Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Migracja MySQL do PostgreSQL na AWS RDS, część 3

W zestawie czterech samouczków badamy migrację instancji bazy danych MySQL do bazy danych PostgreSQL przy użyciu usługi migracji bazy danych AWS (DMS). W pierwszym samouczku „Migracja MySQL do PostgreSQL na AWS RDS, część 1” wprowadziliśmy DMS i stworzyliśmy użytkownika IAM dla DMS. W drugim samouczku, Migracja MySQL do PostgreSQL na AWS RDS, część 2”, stworzyliśmy instancje MySQL i PostgreSQL na RDS i połączyliśmy się z tymi dwoma instancjami. W tym samouczku kontynuacyjnym utworzymy migrację DMS, aby przeprowadzić migrację. Ten samouczek zawiera następujące sekcje:

  • Tworzenie migracji DMS
  • Tworzenie instancji replikacji
  • Tworzenie punktów końcowych zadań migracji
  • Tworzenie zadania migracji
  • Wniosek

Tworzenie migracji DMS

W tej sekcji stworzymy usługę migracji bazy danych (DMS) w celu migracji bazy danych MySQL do bazy danych PostgreSQL. Migracja DMS składa się z następujących komponentów:

  • Instancja replikacji
  • Punkty końcowe bazy danych
  • Zadanie

Omówimy tworzenie każdego z nich w podrozdziałach, ale najpierw musisz utworzyć migrację DMS. Przejdź do panelu DMS i kliknij Utwórz migrację , jak pokazano na rysunku 1.


Rysunek 1: Utwórz migrację

Uruchomi się kreator DMS. Kliknij Dalej, jak pokazano na rysunku 2.


Rysunek 2: Kreator DMS

Tworzenie instancji replikacji

Następnie skonfiguruj instancję replikacji, która nawiązuje połączenie między źródłową i docelową bazą danych, przesyła dane i buforuje zmiany danych, które zachodzą podczas początkowego ładowania danych. Określ instancję replikacji Nazwa i Opis i wybierz klasę instancji (domyślnie dms.t2.medium), jak pokazano na rysunku 3. Wybierz VPC i wybierz opcję konfiguracji wysokiej dostępności za pomocą Mult-Az; domyślne ustawienie to „Nie”. Wybierz opcję Publicznie dostępne .


Rysunek 3: Konfiguracja instancji replikacji

W Zaawansowanym , zachowaj domyślne ustawienia przydzielonej pamięci (50 GB), grupa podsieci replikacji, strefa dostępności (bez preferencji) i grupa zabezpieczeń VPC (użyj wartości domyślnej), jak pokazano na rysunku 4. Wybierz klucz główny KMS (dbms) utworzony wcześniej w sekcji Ustawianie środowiska sekcja.


Rysunek 4: Konfigurowanie ustawień zaawansowanych dla instancji replikacji

Kliknij Dalej, jak pokazano na rysunku 5.


Rysunek 5: Dalej

Rozpoczyna się tworzenie instancji replikacji, jak pokazano w komunikacie na rysunku 6. Następnie należy skonfigurować połączenia źródłowej i docelowej bazy danych, co zajmiemy się w następnym podrozdziale.


Rysunek 6: Rozpoczyna się tworzenie instancji replikacji

Tworzenie punktów końcowych zadania migracji

Utworzenie instancji replikacji może potrwać kilka minut. Punkty końcowe migracji można dodawać podczas tworzenia wystąpienia replikacji. Wybierz silnik źródłowy jako „mysql”, jak pokazano na rysunku 7.


Rysunek 7: Wybór silnika źródłowego

Wybierz Wyszukiwarka docelowa jako „postgres”, jak pokazano na rysunku 8.


Rysunek 8: Wybór silnika docelowego

W Nazwie serwera , określ Punkt końcowy dla instancji RDS DB dla bazy danych, usuwając :port przyrostek. W przypadku bazy danych MySQL punkt końcowy RDS to mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com:3306 . Dlatego określ Nazwę serwera jako mysqldb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com , jak pokazano na rysunku 9. W przypadku bazy danych PostgreSQL w RDS, punktem końcowym jest postgresdb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com:5432; dlatego określ Nazwę serwera jako postgresdb.crbmlbxmp8qi.us-east-1.rds.amazonaws.com . Określ port osobno dla źródłowej i docelowej bazy danych:3306 dla bazy danych MySQL i 5432 dla Postgres.


Rysunek 9: Określanie nazwy serwera i portu dla źródłowej i docelowej bazy danych

Przewiń w dół, aby uzyskać więcej ustawień konfiguracji punktu końcowego, jak pokazano na rysunku 10. Wybierz Tryb SSL jako brak zarówno dla źródłowej, jak i docelowej bazy danych. Określ nazwę użytkownika i hasło zgodnie z konfiguracją podczas tworzenia instancji bazy danych RDS. Określ nazwę bazy danych PostgreSQL (postgresdb), również tak jak skonfigurowano podczas tworzenia instancji RDS DB.


Rysunek 10: Określanie trybu SSL, nazwy użytkownika, hasła i identyfikatora SID lub nazwy bazy danych

W ustawieniach zaawansowanych można określić dodatkowe atrybuty połączenia dostępne dla bazy danych MySQL i bazy danych PostgreSQL, ale nie są one wymagane w tym samouczku. Wybierz klucz główny KMS (dbms) zarówno dla źródłowej, jak i docelowej bazy danych (patrz Rysunek 11). Aby przetestować punkty końcowe DMS, Uruchom test dostępne są przyciski, jak pokazano na rysunku 11. Uruchom test przyciski są wyszarzone lub wyłączone do czasu utworzenia instancji replikacji.


Rysunek 11: Konfigurowanie ustawień zaawansowanych dla punktów końcowych DMS

Po utworzeniu instancji replikacji zostanie wyświetlony komunikat „Instancja replikacji utworzona pomyślnie”, jak pokazano na rysunku 12.


Rysunek 12: Pomyślnie utworzono instancję replikacji

Po utworzeniu instancji replikacji Uruchom test przyciski stają się aktywne. Kliknij Uruchom test , jak pokazano na rysunku 13, dla każdej bazy danych.


Rysunek 13: Uruchom test

Połączenia zaczynają być testowane, jak wskazuje komunikat „Testowanie połączenia punktu końcowego” na rysunku 14.


Rysunek 14: Testowanie połączeń punktów końcowych

Jeśli połączenia punktów końcowych zostały skonfigurowane zgodnie z wymaganiami, powinien zostać wyświetlony komunikat „Połączenie przetestowane pomyślnie”, jak pokazano na rysunku 15. Kliknij Dalej.


Rysunek 15: Pomyślnie przetestowano połączenie

Tworzenie zadania migracji

Po utworzeniu instancji replikacji i punktów końcowych bazy danych, następnie utworzymy zadanie migracji, aby połączyć się z punktami końcowymi i faktycznie przenieść dane. W Utwórz zadanie kreatora, określ Nazwę zadania (określona jest również wartość domyślna) i dodaj opis zadania (patrz Rysunek 16). Wybierz opcję Rozpocznij zadanie przy tworzeniu .


Rysunek 16: Kreator tworzenia zadań

Źródłowe i docelowe punkty końcowe oraz wystąpienie replikacji zostały wcześniej skonfigurowane i nie można ich modyfikować podczas tworzenia zadania. Wybierz Typ migracji , która zawiera listę trzech opcji, jak pokazano na rysunku 17.

  • Przeprowadź migrację istniejących danych :migruje istniejące schematy, tabele i dane tabel, które już istnieją w źródłowej bazie danych, ale nie migruje kolejnych zmian na bieżąco.
  • Przeprowadź migrację istniejących danych i replikuj bieżące zmiany :migruje istniejące schematy, tabele i dane tabel, które już istnieją w źródłowej bazie danych, a także na bieżąco migruje kolejne zmiany.
  • Tylko replikuj zmiany danych :Nie migruje istniejących schematów, tabel i danych oraz migruje tylko zmiany danych.

Wybierz Przenieś istniejące dane Jak pokazano na rysunku 17. Aby przeprowadzić migrację zmian, co zapewniają pozostałe dwie opcje, czas przechowywania dziennika binarnego w instancji MySQL DB musi zostać zwiększony do 24 godzin lub więcej.


Rysunek 17: Wybór typu migracji jako Migracja istniejących danych

Następnie skonfiguruj Ustawienia zadań . Tryb przygotowania tabeli docelowej ustawienie dotyczy tabel w docelowej bazie danych i udostępnia trzy opcje:

  • Nic nie rób :Dane i metadane tabel docelowych nie są zmieniane
  • Upuść tabele na cel :Istniejące tabele, jeśli istnieją, są usuwane i tworzone są nowe tabele
  • Przytnij :Tabele są obcinane, co oznacza, że ​​dane tabeli są usuwane, ale metadane tabeli nie ulegają zmianie. Uwzględnij kolumny LOB w replikacji ustawienie dotyczy kolumn typu danych LOB w źródłowej bazie danych i zapewnia trzy opcje:
    • Nie uwzględniaj kolumn LOB :kolumny LOB są wyłączone z migracji
    • Pełny tryb LOB :migruje kompletne obiekty LOB niezależnie od rozmiaru; LOBs są migrowane w kawałkach, co może spowolnić proces migracji
    • Ograniczony tryb LOB :Przytnij LOB do rozmiaru określonego w maksymalnym rozmiarze LOB (kb)

Wybierz Tryb przygotowania tabeli docelowej jako Nic nie rób, jak pokazano na rysunku 18. Wybierz Uwzględnij kolumny LOB w replikacji jako Ograniczony tryb LOB i określ Maksymalny rozmiar LOB jako 32 kb (domyślnie). Wybierz Włącz rejestrowanie opcja.


Rysunek 18: Ustawienia zadań

Następnie dodaj reguły wyboru i reguły transformacji w mapowaniu tabel , jak pokazano na rysunku 19. Mapowania tabel można dodać za pomocą Z przewodnikiem interfejs użytkownika lub jako JSON . Zalecany jest interfejs użytkownika z przewodnikiem. Należy dodać co najmniej jedną regułę wyboru, a reguły transformacji są opcjonalne. Stosowane są reguły wyboru, podczas gdy wybieranie schematów, tabel i kolumn ze źródłowej bazy danych oraz reguły transformacji są stosowane przed migracją schematów, tabel i kolumn do docelowej bazy danych.


Rysunek 19: Mapowania tabel

Schemat można wybrać z Nazwa schematu to menu rozwijanego lub, jeśli nie ma go na liście, wybierz Wprowadź schemat i określ schemat w Nazwa schematu to pole. Akcja lista rozwijana zawiera dwie opcje:Uwzględnij i Wyklucz . Opcja Uwzględnij obejmuje wybory dokonane dla schematów i tabel, a opcja Wyklucz wyklucza schematy i tabele. Wykluczenia są przetwarzane po włączeniu. Nie wszystkie schematy muszą być wybrane i nie wszystkie tabele ze schematu muszą być wybrane.

Dodamy następującą regułę wyboru:

  • Uwzględnij wszystkie schematy i wszystkie tabele ze źródłowej bazy danych

Jako regułę wyboru wybierz Wprowadź schemat i określ Nazwa schematu to jako % , który wybiera wszystkie schematy w źródłowej bazie danych, jak pokazano na rysunku 20. Określ Nazwa tabeli to jak jako % , który wybiera wszystkie tabele w wybranych schematach. Wybierz Działanie jako Uwzględnij .


Rysunek 20: Konfigurowanie reguły wyboru

Kliknij Dodaj regułę wyboru (patrz Rysunek 21).


Rysunek 21: Dodawanie reguły wyboru

Zostanie dodana reguła wyboru, jak pokazano na rysunku 22. Po utworzeniu zadania rola uprawnień dms-cloudwatch-logs-role został stworzony, aby umożliwić DMS dostęp do CloudWatch.


Rysunek 22: Dodano regułę wyboru

Następnie dodaj regułę transformacji. W tym celu kliknij dodaj regułę transformacji link, jak pokazano na rysunku 23.


Rysunek 23: Dodaj regułę transformacji

Reguła transformacji ma ustawienia dla celu . Reguła ma trzy opcje, jak pokazano na rysunku 24.

  • Schemat
  • Stół
  • Kolumna

Gdzie określa podzbiór obiektów wybranych przez reguły wyboru. Działanie to transformacja, która ma zostać zastosowana, oraz dostępne są następujące opcje:

  • Zmień nazwę na (dostępne dla obiektów schematu i tabeli)
  • Usuń kolumnę (dostępne dla kolumn)
  • Ustaw małe litery (dostępne dla schematów, tabel i kolumn)
  • Ustaw wielkie litery (dostępne dla schematów, tabel i kolumn)
  • Dodaj prefiks (dostępny dla schematów, tabel i kolumn)
  • Usuń prefiks (dostępny dla schematów, tabel i kolumn)


Rysunek 24: Ustawienia reguł transformacji

PostgreSQL wykorzystuje małe litery w schematach, tabelach i kolumnach. Dodamy trzy reguły transformacji:

  • Ustaw wszystkie schematy małymi literami
  • Ustaw wszystkie tabele małymi literami
  • Ustaw wszystkie kolumny małymi literami

Aby dodać pierwszą z tych reguł transformacji, wybierz Cel jako Schemat jak pokazano na rysunku 25. Określ Nazwa schematu jest podobna do % . Wybierz Działanie jako Zrób małe litery i kliknij Dodaj regułę transformacji .


Rysunek 25: Dodawanie reguły transformacji

Zostanie dodana reguła transformacji (patrz Rysunek 26). Aby dodać kolejną regułę transformacji, kliknij dodaj regułę transformacji link ponownie.


Rysunek 26: Dodano regułę transformacji

Wybierz Cel jako Tabela , jak pokazano na rysunku 27. Określ Nazwa schematu jest podobna do % . Wybierz Nazwa tabeli to % . Wybierz Działanie jako Zrób małe litery i kliknij Dodaj regułę transformacji .


Rysunek 27: Dodawanie reguły transformacji w celu zmiany nazwy tabeli

Wybierz Cel jako Kolumna , jak pokazano na rysunku 28. Określ Nazwa schematu jest podobna do % . Wybierz Nazwa tabeli to % . Wybierz Nazwa kolumny to % . Wybierz Działanie jako Zrób małe litery i kliknij Dodaj regułę transformacji .


Rysunek 28: Dodanie reguły transformacji, aby nazwa kolumny była małymi literami

Trzy reguły wyboru i dodana reguła transformacji pokazano na rysunku 29. Po uruchomieniu zadania reguły wyboru są stosowane przed regułami transformacji. Aby uzyskać ustawienia zaawansowane, kliknij Ustawienia zaawansowane , jak pokazano na rysunku 29.


Rysunek 29: Reguły wyboru i reguły transformacji

W Ustawieniach zaawansowanych , wybierz Ustawienia tabeli sterującej i określ Utwórz tabelę kontrolną w miejscu docelowym za pomocą schematu jako publiczny , jak pokazano na rysunku 30, i kliknij Gotowe.


Rysunek 30: Ustawianie schematu tabeli kontrolnej w celu

Zostanie dodane ustawienie Zaawansowane (patrz Rysunek 31).


Rysunek 31: Ustawienia zaawansowane

Po skonfigurowaniu zadania kliknij Utwórz zadanie , jak pokazano na rysunku 32, aby utworzyć zadanie.


Rysunek 32: Utwórz zadanie

Zostanie utworzone zadanie migracji, jak pokazano na rysunku 33. Początkowo status zadania to „Tworzenie”.


Rysunek 33: Zadanie migracji

Zadanie może mieć jeden ze stanów omówionych w Tabeli 1.

Stan Opis
Tworzenie Zadanie jest tworzone.
Gotowe Zadanie jest gotowe do uruchomienia i uruchomienia. Zwykle następuje po statusie „Tworzenie”.
Uruchamianie Rozpoczyna się zadanie, w którym to czasie zadanie łączy się z instancją replikacji i punktami końcowymi bazy danych. Stosowane są reguły wyboru i transformacji.
Bieganie Zadanie jest uruchomione, co oznacza, że ​​zadanie migruje bazę danych.
Ładowanie zakończone Zadanie zakończyło ładowanie (migrację) bazy danych.
Niepowodzenie Zadanie nie powiodło się.
Błąd Wystąpił błąd podczas migracji. Niektóre schematy i tabele mogły zostać pomyślnie zmigrowane, ale co najmniej jeden schemat lub tabela nie powiodły się.
Modyfikowanie Zadanie jest modyfikowane, zwykle po zmodyfikowaniu zadania przez użytkownika.
Zatrzymywanie Zadanie jest zatrzymywane, co zwykle następuje po wybraniu przez użytkownika zatrzymania zadania.
Zatrzymano Zadanie zostało zatrzymane, co może być spowodowane zatrzymaniem zadania przez użytkownika lub użyciem opcji Migracja istniejących danych i replikacja bieżących zmian, a zadanie zakończyło początkowe ładowanie .
Usuwanie Zadanie jest usuwane, co jest spowodowane usunięciem zadania przez użytkownika.

Tabela 1: Statusy zadań

Tworzone są dwie role uprawnień, jedna dla CloudWatch, a druga dla VPC, jak pokazano na rysunku 34.


Rysunek 34: Role uprawnień dla DMS

Wniosek

W tym trzecim samouczku dotyczącym migracji instancji bazy danych MySQL na RDS do instancji bazy danych Postgres na RDS, stworzyliśmy migrację DMS, w tym instancję replikacji, punkty końcowe migracji i zadanie migracji. W czwartym samouczku omówimy uruchomienie migracji DMS w celu przeprowadzenia migracji i oceny wyników.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak liczyć słowa w MySQL / zamienniku wyrażeń regularnych?

  2. Jak zainstalować MySQL w systemie Windows 10? – Twoje kompleksowe rozwiązanie do instalacji MySQL

  3. Rekurencja MySQL?

  4. MySQL — ta wersja MySQL nie obsługuje jeszcze podzapytania 'LIMIT &IN/ALL/ANY/SOME

  5. Zdalne połączenia Mysql Ubuntu