Oktatóanyag: MySQL migrálása Azure Database for MySQL offline állapotba a DMS használatával
A Azure Database Migration Service használatával egyszeri teljes adatbázis-migrálást hajthat végre a helyszíni MySQL-példányon a nagy sebességű adatmigrálási képességgel rendelkező Azure Database for MySQL. Ebben az oktatóanyagban egy mintaadatbázist migrálunk a MySQL 5.7 egy helyszíni példányáról Azure Database for MySQL (5.7-ös verzió) egy offline migrálási tevékenység használatával Azure Database Migration Service. Bár a cikkek feltételezik, hogy a forrás egy MySQL-adatbázispéldány, és Azure Database for MySQL a cél, a forráskiszolgáló nevének és hitelesítő adatainak módosításával használható az egyik Azure Database for MySQL a másikba való migráláshoz. Emellett az alacsonyabb verziójú MySQL-kiszolgálókról (v5.6-os és újabb verziókról) a magasabb verziókra való migrálás is támogatott.
Fontos
Online migráláshoz használhat nyílt forráskódú eszközöket, például MyDumper/MyLoaderadatbetöltéssel.
Megjegyzés
A migrálási felület PowerShell-alapú szkriptelhető verziójáért lásd: szkriptelhető offline migrálás Azure Database for MySQL.
Megjegyzés
A MySQL-hez készült Amazon Relational Database Service (RDS) és az Amazon Aurora (MySQL-alapú) szintén támogatott a migrálás forrásaként.
Eben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Adatbázisséma migrálása a mysqldump segédprogrammal.
- Hozzon létre egy Azure Database Migration Service-példányt.
- Migrálási projekt létrehozása Azure Database Migration Service használatával.
- A migrálás futtatása.
- Az áttelepítés monitorozása.
Előfeltételek
Az oktatóanyag elvégzéséhez a következőkre lesz szüksége:
Rendelkezik aktív előfizetéssel rendelkező Azure-fiókkal. Hozzon létre ingyenes fiókot.
Rendelkeznie kell egy helyszíni MySQL-adatbázissal az 5.7-es verzióval. Ha nem, töltse le és telepítse a MySQL community edition 5.7-et.
A MySQL offline migrálása csak a prémium szintű DMS-termékváltozaton támogatott.
Példány létrehozása az Azure Database for MySQL-ben. A Workbench-alkalmazással történő csatlakozással és adatbázis-létrehozással kapcsolatos részletekért tekintse meg a MySQL Workbench használata a csatlakozáshoz és az adatok lekérdezéséhez című cikket. A Azure Database for MySQL verziónak egyenlőnek vagy magasabbnak kell lennie, mint a helyszíni MySQL-verzió. A MySQL 5.7 például migrálható Azure Database for MySQL 5.7-re, vagy frissíthető 8-ra.
Hozzon létre egy Microsoft Azure-Virtual Network Azure Database Migration Service az Azure Resource Manager üzemi modellel, amely helyek közötti kapcsolatot biztosít a helyszíni forráskiszolgálókkal expressRoute vagy VPN használatával. A virtuális hálózat létrehozásával kapcsolatos további információkért tekintse meg a Virtual Network dokumentációját, és különösen a részletes információkat tartalmazó rövid útmutatócikkeket.
Megjegyzés
A virtuális hálózat beállítása során, ha az ExpressRoute-ot hálózati társviszony-létesítéssel használja a Microsoft, adja hozzá a következő szolgáltatásvégpontokat ahhoz az alhálózathoz, amelyben a szolgáltatás ki lesz építve:
- Céladatbázis-végpont (például SQL-végpont, Azure Cosmos DB-végpont stb.)
- Tárolási végpont
- Service Bus-végpont
Ez a konfiguráció azért szükséges, mert Azure Database Migration Service nem rendelkezik internetkapcsolattal.
Győződjön meg arról, hogy a virtuális hálózati hálózati biztonsági csoport szabályai nem blokkolják a ServiceTag 443-at a ServiceBushoz, a Storage-hoz és az AzureMonitorhoz. A virtuális hálózati NSG-forgalom szűréséről további információt a Hálózati forgalom szűrése hálózati biztonsági csoportokkal című cikkben talál.
Nyissa meg a Windows tűzfalat, hogy Azure Database Migration Service Virtual Network kapcsolatai elérhessék a mySQL-kiszolgáló forrását, amely alapértelmezés szerint a 3306-os TCP-port.
Ha tűzfalberendezést használ a forrásadatbázis(ok) előtt, előfordulhat, hogy tűzfalszabályokat kell hozzáadnia ahhoz, hogy a Virtual Network kapcsolatait Azure Database Migration Service elérhesse a forrásadatbázis(ok)ot a migráláshoz.
Hozzon létre egy kiszolgálószintű tűzfalszabályt, vagy konfigurálja a VNET-szolgáltatásvégpontokat a cél-Azure Database for MySQL számára, hogy Virtual Network Azure Database Migration Service hozzáférését a céladatbázisokhoz.
A forrásként szolgáló MySQL-nek a MySQL közösségi kiadásának kell lennie. A MySQL-példány verziójának megállapításához futtassa a következő parancsot a MySQL segédprogramban vagy a MySQL Workbenchben:
SELECT @@version;
Az Azure Database for MySQL csak az InnoDB-táblákat támogatja. Ha a MyISAM-táblákat InnoDB-táblákká szeretné alakítani, tekintse meg a táblák MyISAM-ból InnoDB-vé konvertálását ismertető részt
A felhasználónak rendelkeznie kell a forrásadatbázis adatainak olvasásához jogosult jogosultságokkal.
A cél Azure Database for MySQL példány méretezése
A célkiszolgáló Azure Database for MySQL a Azure Database Migration Service használatával történő gyorsabb adatbetöltéshez való előkészítéséhez a következő kiszolgálóparaméterek és konfigurációs módosítások ajánlottak.
- max_allowed_packet – állítsa 1073741824 (azaz 1 GB) értékre, hogy megakadályozza a nagy sorok miatti csatlakozási problémákat.
- slow_query_log – állítsa KI értékre a lassú lekérdezési napló kikapcsolásához. Ez kiküszöböli a lassú lekérdezésnaplózás által okozott többletterhelést az adatbetöltések során.
- query_store_capture_mode – a NINCS értékre van állítva a lekérdezéstár kikapcsolásához. Ez kiküszöböli a Lekérdezéstár mintavételezési tevékenységei által okozott többletterhelést.
- innodb_buffer_pool_size – Innodb_buffer_pool_size csak Azure Database for MySQL kiszolgáló számítási kapacitásának felskálázásával növelhető. A innodb_buffer_pool_size növelése érdekében vertikálisan skálázza fel a kiszolgálót 64 virtuális magos általános célú termékváltozatra a portál tarifacsomagjából a migrálás során.
- & innodb_io_capacity innodb_io_capacity_max – Váltson 9000-re az Azure Portal kiszolgálóparaméteréről, hogy javítsa az I/O-kihasználtságot az áttelepítési sebesség optimalizálása érdekében.
- & innodb_write_io_threads innodb_write_io_threads – A migrálás sebességének javítása érdekében módosítsa a Azure Portal kiszolgálóparamétereinek 4-ére.
- Tárolási szint vertikális felskálázása – A Azure Database for MySQL-kiszolgáló IOP-ja fokozatosan növekszik a tárolási szint növekedésével.
- Az egykiszolgálós üzembe helyezési beállításban a gyorsabb terhelés érdekében javasoljuk, hogy növelje a tárolási szintet a kiosztott IOPP-k számának növelése érdekében.
- A rugalmas kiszolgáló üzembe helyezési lehetőségében azt javasoljuk, hogy a tárterület méretétől függetlenül skálázza (növelje vagy csökkentse) az IOPS-t.
- Vegye figyelembe, hogy a tárterület mérete csak felskálázható, nem lefelé.
A migrálás befejezése után visszaállíthatja a kiszolgáló paramétereit és konfigurációját a számítási feladathoz szükséges értékekre.
Adatbázisséma migrálása
Az összes adatbázis-objektum, például a táblaséma, az indexek és a tárolt eljárások átviteléhez ki kell nyernünk a sémát a forrásadatbázisból, és a céladatbázisra kell alkalmaznunk. A séma kibontásához használhatja a mysqldump segédprogramot a --no-data
paraméterrel. Ehhez olyan gépre van szüksége, amely képes csatlakozni a forrás MySQL-adatbázishoz és a cél Azure Database for MySQL.
A séma mysqldump használatával történő exportálásához futtassa a következő parancsot:
mysqldump -h [servername] -u [username] -p[password] --databases [db name] --no-data > [schema file path]
Például:
mysqldump -h 10.10.123.123 -u root -p --databases migtestdb --no-data > d:\migtestdb.sql
Ha sémát szeretne importálni a cél Azure Database for MySQL, futtassa a következő parancsot:
mysql.exe -h [servername] -u [username] -p[password] [database]< [schema file path]
Például:
mysql.exe -h mysqlsstrgt.mysql.database.azure.com -u docadmin@mysqlsstrgt -p migtestdb < d:\migtestdb.sql
Ha a sémában vannak idegen kulcsok vagy eseményindítók, a migrálás során a párhuzamos adatbetöltést az áttelepítési feladat kezeli. A séma áttelepítése során nem kell idegen kulcsokat vagy eseményindítókat elvetni.
Az erőforrás-szolgáltató regisztrálása
A Database Migration Service első példányának létrehozása előtt regisztrálja a Microsoft.DataMigration erőforrás-szolgáltatót.
Jelentkezzen be az Azure Portalra. Keresse meg és válassza az Előfizetések lehetőséget.
Válassza ki azt az előfizetést, amelyben létre szeretné hozni a Azure Database Migration Service példányát, majd válassza az Erőforrás-szolgáltatók lehetőséget.
Keresse meg a migrálást, majd válassza a RegisztrációMicrosoft lehetőséget. DataMigration.
Database Migration Service-példány létrehozása
Az Azure Portalon válassza a + Erőforrás létrehozása lehetőséget, keresse meg az Azure Database Migration Service-t, és a legördülő menüben válassza ki az Azure Database Migration Service-t.
Az Azure Database Migration Service képernyőn válassza a Létrehozás lehetőséget.
A migrálási szolgáltatás létrehozása képernyőn adja meg a szolgáltatás, az előfizetés és egy új vagy meglévő erőforráscsoport nevét.
Válasszon ki egy tarifacsomagot, és lépjen a hálózatkezelési képernyőre. Az offline migrálási képesség csak a prémium tarifacsomagban érhető el.
További tájékoztatás a költségekről és a tarifacsomagokról a díjszabási lapon olvasható.
Válasszon ki egy meglévő virtuális hálózatot a listából, vagy adja meg a létrehozandó új virtuális hálózat nevét. Ugrás a véleményezésre és a létrehozási képernyőre. Ha szeretné, címkéket adhat hozzá a szolgáltatáshoz a címkék képernyő használatával.
A virtuális hálózat hozzáférést biztosít Azure Database Migration Service a forrás SQL Server és a cél Azure SQL adatbázispéldányhoz.
A virtuális hálózat Azure Portal való létrehozásáról további információt a Virtuális hálózat létrehozása a Azure Portal használatával című cikkben talál.
Tekintse át a konfigurációkat, és válassza a Létrehozás lehetőséget a szolgáltatás létrehozásához.
Migrálási projekt létrehozása
A szolgáltatás létrejötte után keresse meg azt az Azure Portalon, nyissa meg, és hozzon létre egy új migrálási projektet.
Az Azure Portalon válassza a Minden szolgáltatás lehetőséget, keresse meg az Azure Database Migration Service-t, majd válassza ki az Azure Database Migration Servicest.
Válassza ki a migrálási szolgáltatáspéldányt a keresési eredmények közül, és válassza az + Új migrálási projekt lehetőséget.
Az Új migrálási projekt képernyőn adja meg a projekt nevét, a Forráskiszolgáló típusának kiválasztása mezőben válassza a MySQL lehetőséget, a Célkiszolgáló típusának kiválasztása mezőben válassza az Azure Database For MySQL lehetőséget, majd a Migrálási tevékenységtípus kiválasztása mezőben válassza az Adatmigrálás lehetőséget. Válassza a Tevékenység létrehozása és futtatása lehetőséget.
Megjegyzés
Másik lehetőségként választhatja a Csak projekt létrehozása lehetőséget az áttelepítési projekt most történő létrehozásához és a migrálás későbbi végrehajtásához.
Migrálási projekt konfigurálása
A Forrás kiválasztása képernyőn adja meg a forrás MySQL-példány kapcsolati adatait, majd válassza a Tovább : Cél>> kiválasztása lehetőséget.
A Cél kiválasztása képernyőn adja meg a célpéldány Azure Database for MySQL kapcsolati adatait, majd válassza a Tovább : Adatbázisok>> kiválasztása lehetőséget.
Az Adatbázisok kiválasztása képernyőn képezheti le a forrást és a migrálás céladatbázisát, majd válassza a Tovább : Áttelepítési beállítások>> konfigurálása lehetőséget. A Forráskiszolgáló írásvédetté tétele lehetőséget választva írásvédetté teheti a forrást, de ne feledje, hogy ez egy kiszolgálószintű beállítás. Ha be van jelölve, a teljes kiszolgálót írásvédettre állítja, nem csak a kijelölt adatbázisokat.
Ha a céladatbázis ugyanazt az adatbázisnevet tartalmazza, mint a forrásadatbázis, Azure Database Migration Service alapértelmezés szerint kiválasztja a céladatbázist.
Megjegyzés
Bár ebben a lépésben több adatbázist is kiválaszthat, de a DB-k ilyen módon történő migrálásának korlátja van, mivel mindegyik adatbázis megosztja a számítást. A Prémium termékváltozat alapértelmezett konfigurációjával minden áttelepítési feladat két táblát próbál meg párhuzamosan migrálni. Ezek a táblák bármelyik kijelölt adatbázisból származhatnak. Ha ez nem elég gyors, az adatbázis-áttelepítési tevékenységeket különböző migrálási feladatokra oszthatja fel, és több szolgáltatásra skálázhatja. Emellett előfizetésenként legfeljebb 10 Azure Database Migration Service lehet régiónként. Az áttelepítés átviteli sebességének és párhuzamosításának részletesebb szabályozásához tekintse meg a PowerShell: Offline migrálás futtatása MySQL-adatbázisból Azure Database for MySQL DMS használatával című cikket.
A Migrálási beállítások konfigurálása képernyőn válassza ki az áttelepítés részét képező táblákat, majd válassza a Tovább : Összegzés>> lehetőséget. Ha a céltáblák rendelkeznek adatokkal, azok alapértelmezés szerint nincsenek kijelölve, de ön explicit módon kijelölheti őket, és az áttelepítés megkezdése előtt csonkíthatja őket.
Az Összefoglalás képernyőn, a Tevékenység neve szövegmezőben adja meg az áttelepítési tevékenység nevét, és tekintse át az összegzést, hogy a forrás és a cél adatai megegyeznek-e a korábban megadott adatokval.
Válassza a Migrálás indítása lehetőséget. Megjelenik a migrálás műveletének ablaka. A tevékenység Állapota: Inicializálás. Az állapot a tábla migrálásának megkezdésekor a Futtatás értékre változik.
A migrálás monitorozása
A migrálási tevékenység képernyőjén válassza a Frissítés lehetőséget a megjelenítés frissítéséhez, és tekintse meg a befejezett táblák számának előrehaladását.
A tevékenység képernyőjén az adatbázis nevére kattintva megtekintheti az egyes táblák állapotát a migrálásuk során. A megjelenítés frissítéséhez válassza a Frissítés lehetőséget.
A migrálás befejezése
A migrálás műveletének ablakában válassza a Frissítés lehetőséget a megjelenítés frissítéséhez addig, amíg a migrálás Állapota át nem vált Befejezve értékre.
Migrálás utáni tevékenységek
Az offline migrálásban a migrálási átállás alkalmazásfüggő folyamat, amely nem tartozik a dokumentum hatókörébe, de a migrálást követő tevékenységeket a rendszer előírja:
- Hozzon létre bejelentkezéseket, szerepköröket és engedélyeket az alkalmazás követelményeinek megfelelően.
- Hozza létre újra a céladatbázis összes eseményindítóját az áttelepítés előtti lépés során kinyert módon.
- A migrálás érvényességen igazolása érdekében az alkalmazás állapottesztjének elvégzése a céladatbázissal.
Az erőforrások eltávolítása
Ha nem fogja továbbra is használni a Database Migration Service, az alábbi lépésekkel törölheti a szolgáltatást:
Az Azure Portalon válassza a Minden szolgáltatás lehetőséget, keresse meg az Azure Database Migration Service-t, majd válassza ki az Azure Database Migration Servicest.
Válassza ki a migrálási szolgáltatáspéldányt a keresési eredmények közül, majd válassza a Szolgáltatás törlése lehetőséget.
A megerősítést kérő párbeszédpanelen írja be a szolgáltatás nevét az ADATBÁZIS-ÁTTELEPÍTÉSI SZOLGÁLTATÁS NEVE szövegmezőbe, és válassza a Törlés lehetőséget.
Következő lépések
- A DMS használatával végzett migrálások ismert problémáiról és korlátozásairól a Gyakori problémák – Azure Database Migration Service című cikkben olvashat.
- A forrásadatbázis DMS használata során felmerülő csatlakozási problémáinak elhárításához tekintse meg a Forrásadatbázisok csatlakoztatásával kapcsolatos problémák című cikket.
- A Azure Database Migration Service kapcsolatos információkért lásd a Mi az Azure Database Migration Service? című cikket.
- A Azure Database for MySQL a Mi az Azure Database for MySQL? című cikkben talál további információt.
- A DMS PowerShellen keresztüli használatáról a PowerShell: Offline migrálás futtatása MySQL-adatbázisból a DMS használatával Azure Database for MySQL című cikkben talál útmutatást.