Udostępnij za pośrednictwem


Migrowanie lokalnego programu MySQL do usługi Azure Database for MySQL: metody migracji

DOTYCZY: Azure Database for MySQL — pojedynczy serwer usługi Azure Database for MySQL — serwer elastyczny

Wymagania wstępne

Planowanie

Omówienie

Pobranie danych ze źródła do celu wymaga użycia narzędzi lub funkcji programu MySQL w celu przeprowadzenia migracji.

Przed rozpoczęciem następnych etapów oceny i planowania ważne jest ukończenie wszystkich etapów oceny i planowania. Zbierane decyzje i dane to zależności ścieżki migracji i wyboru narzędzi.

W tej sekcji zapoznamy się z następującymi powszechnie używanymi narzędziami:

  • MySQL Workbench

  • mysqldump

  • mydumper i myloader

  • Replikacja typu data-in (binlog)

MySQL Workbench

Program MySQL Workbench udostępnia bogate środowisko graficznego interfejsu użytkownika, które umożliwia deweloperom i administratorom projektowanie, opracowywanie i zarządzanie wystąpieniami programu MySQL.

Najnowsza wersja aplikacji MySQL Workbench zapewnia zaawansowane możliwości migracji obiektów podczas przenoszenia bazy danych ze źródła do obiektu docelowego.

Importowanie i eksportowanie danych

Program MySQL Workbench udostępnia interfejs użytkownika oparty na kreatorze umożliwiający pełne lub częściowe eksportowanie i importowanie tabel i obiektów bazy danych. Aby zapoznać się z przykładem korzystania z aplikacji MySQL Workbench, zobacz Migrowanie bazy danych MySQL przy użyciu importowania i eksportowania.

Zrzut i przywracanie (mysqldump)

mysqldump jest zwykle dostarczany w ramach instalacji programu MySQL. Jest to narzędzie klienckie, które można uruchomić w celu utworzenia logicznych kopii zapasowych, które są równoznaczne z zestawem instrukcji SQL, które można odtworzyć, aby ponownie skompilować bazę danych do punktu w czasie. mysqldump nie jest przeznaczony jako szybkie lub skalowalne rozwiązanie do tworzenia kopii zapasowych lub migrowania dużych ilości danych. Wykonywanie dużego zestawu instrukcji wstawiania SQL może działać źle ze względu na operacje we/wy dysku wymagane do zaktualizowania indeksów. Jednak w połączeniu z innymi narzędziami, które wymagają oryginalnego schematu, mysqldump jest doskonałym narzędziem do generowania schematów baz danych i tabel. Schematy mogą tworzyć docelowe środowisko strefy docelowej.

Narzędzie mysqldump udostępnia przydatne funkcje w fazie migracji danych. Przed uruchomieniem narzędzia należy ocenić zagadnienia dotyczące wydajności. Zobacz Zagadnienia dotyczące wydajności.

mydumper i myloader

Środowiska z dużymi bazami danych wymagającymi szybkiej migracji powinny używać narzędzia mydumper i myloader. Te narzędzia są napisane w języku C++ i wykorzystują techniki wielowątkowe do wysyłania danych tak szybko, jak to możliwe do docelowego wystąpienia mySQL. mydumper i korzystać z równoległości i myloader może przyspieszyć migrację przez współczynnik 10x lub więcej.

Wersje binarne narzędzi dostępne do pobrania publicznego zostały skompilowane dla systemu Linux. Aby uruchomić te narzędzia w systemie Windows, należy ponownie skompilować projekty typu open source. Kompilowanie kodu źródłowego i tworzenie wydań nie jest prostym zadaniem dla większości użytkowników.

Replikacja typu data-in (binlog)

Podobnie jak w przypadku innych systemów zarządzania bazami danych program MySQL udostępnia funkcję replikacji dzienników o nazwie replikacja binlog. Funkcja binlog replikacji ułatwia migrację danych i tworzenie replik do odczytu.

Skorzystaj z replikacji binlog, aby przeprowadzić migrację danych do usługi Azure Database for MySQL w scenariuszu online. Replikacja danych pomaga zmniejszyć czas przestoju wymagany do wprowadzenia ostatecznych zmian danych docelowych.

W celu korzystania z binlog funkcji replikacji istnieją pewne wymagania dotyczące konfiguracji :

  • Następnie zaleca się użycie aparatu MySQL InnoDB. Jeśli używasz aparatu magazynu innego niż InnoDB, musisz przeprowadzić migrację tych tabel do bazy danych InnoDB.

  • Użytkownicy migracji muszą mieć uprawnienia do konfigurowania rejestrowania binarnego i tworzenia nowych użytkowników na serwerze głównym.

  • Jeśli serwer główny ma włączony protokół SSL, upewnij się, że certyfikat urzędu certyfikacji SSL podany dla domeny został uwzględniony w procedurze składowanej mysql.az_replication_change_master. Zapoznaj się z poniższymi przykładami i parametrem master_ssl_ca.

  • Upewnij się, że adres IP serwera głównego został dodany do reguł zapory serwera repliki usługi Azure Database for MySQL. Zaktualizuj reguły zapory za pomocą witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

  • Upewnij się, że maszyna hostująca serwer główny zezwala na ruch przychodzący i wychodzący na porcie 3306.

  • Upewnij się, że serwer główny ma dostępny adres IP (publiczny lub prywatny) ze źródła do obiektów docelowych.

Aby przeprowadzić migrację przy użyciu replikacji, zobacz Jak skonfigurować replikację danych usługi Azure Database for MySQL, aby uzyskać szczegółowe informacje.

Metoda binlog replikacji ma wysokie wymagania dotyczące procesora CPU i dodatkowego magazynu. Użytkownicy migracji powinni przetestować obciążenie umieszczone w systemie źródłowym podczas migracji online i określić, czy jest to akceptowalne.

Usługa Azure Database Migration Service (DMS)

Usługa Azure Database Migration Services (DMS) to narzędzie oparte na chmurze platformy Azure, które umożliwia administratorom śledzenie różnych ustawień migracji i ponowne używanie ich w razie potrzeby. Usługa DMS działa przez utworzenie projektów migracji z ustawieniami wskazującymi różne źródła i miejsca docelowe. Obsługuje migracje w trybie offline. Ponadto obsługuje obciążenia danych lokalnych i obciążenia oparte na chmurze, takie jak Amazon Relational Database Service (RDS) MySQL.

Mimo że usługa DMS jest narzędziem online, polega na binlog funkcji replikacji bazy danych MySQL do wykonywania zadań. Obecnie usługa DMS częściowo automatyzuje proces migracji w trybie offline. Usługa DMS wymaga generowania i stosowania zgodnego schematu w docelowym wystąpieniu usługi Azure Database for MySQL. Schematy można eksportować przy użyciu narzędzia klienckiego mysqldump .

Najszybsza/minimalna migracja przestojów

Istnieje wiele ścieżek do migrowania danych. Podjęcie decyzji, która ścieżka do podjęcia jest funkcją zestawu umiejętności zespołu migracji, a ilość przestojów, które właściciele bazy danych i aplikacji są gotowi zaakceptować. Niektóre narzędzia obsługują podejścia do migracji danych równoległych wielowątkowy, podczas gdy inne narzędzia zostały zaprojektowane pod kątem prostych migracji tylko danych tabeli.

Najszybszą i najbardziej kompletną ścieżką jest użycie binlog replikacji (bezpośrednio z bazą danych MySQL lub za pośrednictwem usługi DMS), ale wiąże się z kosztami dodawania kluczy podstawowych.

Tabela decyzyjna

Istnieje wiele ścieżek, które można wykonać w celu zmigrowania obciążeń MySQL. Przedstawiliśmy tabelę potencjalnych ścieżek oraz zalety i wady każdego z nich:

Cel cząstkowy opis Narzędzie Wymagania wstępne Zalety Wady
Najszybsza możliwa migracja Podejście równoległe mydumper i myloader Linux Wysoce równoległe Ograniczanie przepustowości docelowej
Migracja online Zachowaj źródło tak długo, jak to możliwe binlog Brak Bezproblemowość Dodatkowe przetwarzanie i magazyn
Migracja w trybie offline Zachowaj źródło tak długo, jak to możliwe Database Migration Service (DMS) Brak Powtarzalny proces Ograniczone tylko do danych, obsługuje wszystkie wersje programu MySQL
Migracja w trybie offline o wysokim stopniu dostosowania Selektywne eksportowanie obiektów mysqldump Brak Wysoce dostosowywalne Ręcznie
Migracja w trybie offline — częściowo zautomatyzowana Eksportowanie i importowanie oparte na interfejsie użytkownika MySQL Workbench Pobieranie i instalowanie Częściowo zautomatyzowane Obsługiwane są tylko typowe zestawy przełączników

Scenariusz ii wojny światowej

WWI wybrała swoją bazę danych konferencji jako pierwsze obciążenie migracji. Wybrano obciążenie, ponieważ miało najmniejsze ryzyko i najbardziej dostępny przestój z powodu luki w rocznym harmonogramie konferencji. Ponadto na podstawie oceny zespołu ds. migracji ustalili, że próbowali przeprowadzić migrację w trybie offline przy użyciu aplikacji MySQL Workbench.

Lista kontrolna metod migracji

  • Upewnij się, że wybrano właściwą metodę, biorąc pod uwagę środowiska docelowe i źródłowe.

  • Upewnij się, że metoda może spełniać wymagania biznesowe.

  • Zawsze sprawdzaj, czy obciążenie danych obsługuje metodę .

Następny krok