Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure Database Migration Service használatával az Azure Portalon keresztül migrálhatja az adatbázisokat az SQL Server egy helyszíni példányából az Azure SQL Database-be (offline).
Ebben az oktatóanyagban megtudhatja, hogyan migrálhatja a mintaadatbázist AdventureWorks2022 az SQL Server egy helyszíni példányából az Azure SQL Database-be a Database Migration Service használatával. Ez az oktatóanyag offline migrálási módot használ, amely az áttelepítési folyamat során elfogadható állásidőt vesz figyelembe.
Ebben az oktatóanyagban a következőket sajátíthatja el:
- Egy Azure Database Migration Service-példány létrehozása
- A migrálás indítása és az előrehaladás figyelése a befejezésig
Fontos
Az Azure SQL Database-célok online migrálása jelenleg nem érhető el az Azure Database Migration Service-ben. Offline migrálás esetén az alkalmazás állásideje az áttelepítés indításakor kezdődik. Ajánlott az offline migráció tesztelése annak megállapításához, hogy a leállás elfogadható-e.
Migrálási lehetőségek
A következő szakasz az Azure Database Migration Service és az Azure Portal használatát ismerteti.
Előfeltételek
Az oktatóanyag megkezdése előtt:
Győződjön meg arról, hogy hozzáfér az Azure Portalhoz.
Győződjön meg arról, hogy a Microsoft.DataMigration erőforrás-szolgáltató regisztrálva van az előfizetésében.
Rendelkezik egy Azure-fiókkal, amely az alábbi beépített szerepkörök egyikéhez van hozzárendelve:
- A célbeli Azure SQL Database közreműködője
- Olvasói szerepkör a cél Azure SQL Database-t tartalmazó Azure-erőforráscsoporthoz
- Tulajdonosi vagy közreműködői szerepkör az Azure-előfizetéshez (az Azure Database Migration Service új példányának létrehozása esetén szükséges)
Ezen beépített szerepkörök egyikének használata helyett egyéni szerepköröket rendelhet hozzá.
Győződjön meg arról, hogy a forrás SQL Server-példányhoz csatlakozó SQL Server-bejelentkezés tagja a db_datareader szerepkörnek, és hogy a cél SQL Server-példány bejelentkezése a db_owner szerepkör tagja.
Ha az adatbázissémát a forrásból a cél Azure SQL Database-be szeretné migrálni a Database Migration Service használatával, a minimálisan támogatott SHIR-verzió az 5.37-es vagy újabb.
Ha sémamigrálásról van szó, a forrás SQL Serveren a minimálisan szükséges engedély a db_owner az adatbázishoz való hozzáféréshez. A cél Azure SQL Database-ben a felhasználónak tagként szerepelnie kell az alábbi táblázat összes kiszolgálószintű szerepkörében.
| Szerepkörök | Leírás |
|---|---|
| ##MS_DatabaseManager## | A ##MS_DatabaseManager## rögzített kiszolgálói szerepkör tagjai adatbázisokat hozhatnak létre és törölhetnek. Az adatbázist létrehozó ##MS_DatabaseManager## szerepkör tagja lesz az adatbázis tulajdonosa, amely lehetővé teszi, hogy a felhasználó dbo-felhasználóként csatlakozzon az adatbázishoz. A dbo-felhasználó minden adatbázis-engedéllyel rendelkezik az adatbázisban. A ##MS_DatabaseManager## szerepkör tagjai nem feltétlenül rendelkeznek engedéllyel a nem birtokolt adatbázisokhoz való hozzáféréshez. Javasoljuk, hogy ezt a kiszolgálói szerepkört használja a master adatbázis szintjén lévő dbmanager szerepkör helyett. |
| ##MS_DatabaseConnector## | A ##MS_DatabaseConnector## rögzített kiszolgálói szerepkör tagjai bármilyen adatbázishoz csatlakozhatnak anélkül, hogy az adatbázisban felhasználói fiókra kellene csatlakozniuk. |
| ##MS_DefinitionReader## | A ##MS_DefinitionReader## rögzített kiszolgálói szerepkör tagjai minden olyan adatbázis katalógusnézetét elolvashatják, VIEW ANY DEFINITION amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. |
| ##MS_LoginManager## | A ##MS_LoginManager## rögzített kiszolgálói szerepkör tagjai létrehozhatnak és törölhetnek bejelentkezéseket. Javasoljuk, hogy ezt a kiszolgálói szerepkört használja a master adatbázisban létező loginmanager adatbázisszintű szerepkör helyett. |
A cél Azure SQL Database előkészítése
Ha létre szeretné hozni a bejelentkezést és a felhasználót a cél Azure SQL Database-ben, futtassa a következő szkriptet az master adatbázisban:
CREATE LOGIN testuser WITH PASSWORD = '<password>';
ALTER SERVER ROLE ##MS_DefinitionReader## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_DatabaseConnector## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_DatabaseManager## ADD MEMBER [testuser];
GO
ALTER SERVER ROLE ##MS_LoginManager## ADD MEMBER [testuser];
GO
CREATE USER testuser FOR LOGIN testuser;
EXECUTE sp_addRoleMember 'dbmanager', 'testuser';
EXECUTE sp_addRoleMember 'loginmanager', 'testuser';
Most az adatbázissémát és az adatokat is migrálhatja a Database Migration Service használatával. A Visual Studio Code SQL Database Projects bővítményéhez hasonló egyéb eszközökkel is áttelepítheti a sémát, mielőtt kiválasztja az áttelepítendő táblák listáját.
Megjegyzés:
Ha nincsenek táblák az Azure SQL Database-célon, vagy a migrálás megkezdése előtt nincsenek táblák kijelölve, a Tovább gomb nem érhető el az áttelepítés elindításához. Ha nincs tábla a célon, akkor a továbblépéshez ki kell választania a sémamigrálási lehetőséget.
Database Migration Service-példány létrehozása
1. lépés: Az Azure Portalon lépjen az Azure Database Migration Service oldalára. Hozzon létre egy új Azure Database Migration Service-példányt, vagy használja újra a korábban létrehozott meglévő példányt.
A Database Migration Service meglévő példányának használata
A Database Migration Service meglévő példányának használata:
Az Azure Portalon az Azure Database Migration Services alatt válassza ki a használni kívánt adatbázis-áttelepítési szolgáltatás egy meglévő példányát, biztosítva, hogy az a megfelelő erőforráscsoportban és régióban legyen jelen.
A Database Migration Service új példányának létrehozása
A Database Migration Service új példányának létrehozása:
Az Azure Portalon az Azure Database Migration Service alatt válassza a Létrehozás lehetőséget.
A Migrálási forgatókönyv és az Adatbázis-áttelepítési szolgáltatás kiválasztása területen válassza ki a kívánt bemenetet, például a forrás- és célkiszolgáló típusát, válassza az Adatbázis-migrálási szolgáltatás lehetőséget, majd a Kiválasztás lehetőséget.
A következő képernyőn válassza ki az előfizetést és az erőforráscsoportot, majd válassza a Hely lehetőséget, és adja meg az Adatbázis-migrálási szolgáltatás nevét. Válassza a Felülvizsgálat és létrehozás lehetőséget. Ez létrehozza az Azure Database Migration Service-t.
Ha a saját üzemeltetésű integrációs modulra (SHIR) van szükség, az Adatbázis-áttelepítési szolgáltatás áttekintési lapján és a Beállítások területen válassza az Integrációs modul lehetőséget, és hajtsa végre a következő lépéseket:
Válassza az Integrációs modul konfigurálása lehetőséget, és válassza az Integrációs modul letöltése és telepítése hivatkozást a letöltési hivatkozás webböngészőben való megnyitásához. Töltse le az integrációs modult, majd telepítse egy olyan számítógépre, amely megfelel a forrás SQL Server-példányhoz való csatlakozás előfeltételeinek. További információ: Saját üzemeltetésű integrációs modul adatbázis-áttelepítésekhez.
Ha a telepítés befejeződött, a Microsoft Integration Runtime Configuration Manager automatikusan megnyílik a regisztrációs folyamat megkezdéséhez.
A Hitelesítési kulcs táblában másolja ki a varázslóban megadott hitelesítési kulcsok egyikét, és illessze be a Microsoft Integration Runtime Configuration Managerbe.
Ha a hitelesítési kulcs érvényes, zöld pipa ikon jelenik meg az Integration Runtime Configuration Managerben. A zöld pipa azt jelzi, hogy folytathatja a regisztrációt.
A saját üzemeltetésű integrációs modul regisztrálása után zárja be a Microsoft Integration Runtime Configuration Managert. A Csomópont részleteinek megjelenítése az Azure Portal adatbázis-migrálási szolgáltatásában, a Beállítások > integrációs modulban több percig is eltarthat.
Megjegyzés:
A saját üzemeltetésű integrációs modulról további információt a saját üzemeltetésű integrációs modul létrehozása és konfigurálása című témakörben talál.
Új migrálás indítása
Új migrálás indításához nyissa meg az Azure Database Migration Service-t az Azure Portalon, és a +Létrehozás használatával hozzon létre egy új adatbázis-migrálási szolgáltatást, vagy válasszon ki egy meglévő példányt, majd lépjen az Azure Database Migration Service-példányra.
Az Azure Database Migration Service-példány Áttekintés panelén válassza az Új migrálás lehetőséget:
Az Új áttelepítési forgatókönyv kiválasztása csoportban válassza ki a forrást, a célkiszolgáló típusát, az áttelepítési módot, és válassza a Kiválasztás lehetőséget.
Az Azure SQL Database offline migrálási varázslóján kövesse az alábbi lépéseket:
A Forrás részletei lapon adja meg a forrás SQL Server-példány adatait, majd válassza a Tovább: Csatlakozás a forrás SQL Serverhez lehetőséget:
A Csatlakozás a forrás SQL Serverhez lapon adja meg a kapcsolat részleteit, majd válassza a Tovább: Adatbázisok kiválasztása migráláshoz lehetőséget:
A Migráláshoz szükséges adatbázisok kiválasztása lapon jelölje be az áttelepítendő adatbázisok melletti jelölőnégyzetet. Az adatbázisok listájának feltöltése eltarthat egy ideig. Válassza a Tovább elemet: Csatlakozás a cél Azure SQL Database-hez.
A Csatlakozás a cél Azure SQL Database-hez lapon adja meg a kapcsolat részleteit, majd válassza a Tovább: Forrás- és céladatbázisok leképezése lehetőséget:
A Forrás és céladatbázisok leképezése lapon képezd le az adatbázisokat a forrás és a cél között.
(Nem kötelező) Jelölje be a Hiányzó séma áttelepítése melletti jelölőnégyzetet, ha hiányzó sémaobjektumokat szeretne üzembe helyezni a forrásból az Azure SQL Database-tárolóba a következő sémaobjektumok egyetlen jelölőnégyzettel történő áttelepítéséhez:
- Sémák
- Kiválasztott táblák
- Indexek
- Nézetek
- Tárolt eljárások (Stored Procedures)
- Szinonimák
- DDL-eseményindítók (DdlTriggers)
- Alapértelmezett beállítások
- Teljes szöveges katalógusok (FullTextCatalogs)
- Tervútmutatók (PlanGuides)
- Szerepkörök
- Szabályok
- Alkalmazásszerepkörök (ApplicationRoles)
- Felhasználó által definiált összesítések (UserDefinedAggregates)
- Felhasználó által definiált adattípusok (UserDefinedDataTypes)
- Felhasználó által definiált függvények (UserDefinedFunctions)
- Felhasználó által definiált táblatípusok (UserDefinedTableTypes)
- Felhasználó által definiált típusok (UserDefinedTypes)
- Felhasználók* (nem minden felhasználótípus)
- XmlSchemaCollections
Megjegyzés:
- Ha a Hiányzó séma áttelepítése lehetőséget választja, az adatbázis-áttelepítési szolgáltatás végrehajtja a séma migrálását az adatok migrálása előtt.
- A DMS akkor is folytatja az adatmigrálási fázist, ha a séma migrálása hibákba ütközik, hacsak nincsenek problémák a táblaobjektumokkal kapcsolatban.
A következő lépésben az Összes tábla kijelölése parancsot választva migrálhatja az összes táblát, vagy a szövegbeviteli mezővel szűrheti a táblák listáját, és kijelölheti az egyes táblákat az áttelepítéshez. Ezután válassza a Tovább: Adatbázis-migrálás összegzése lehetőséget.
Az Adatbázis áttelepítésének összegzése lapon tekintse át a részleteket, majd válassza a Migrálás indítása lehetőséget, amely elindítja az adatbázis-migrálást, és automatikusan visszaviszi a Database Migration Service irányítópultjára.
Megjegyzés:
Offline migrálás esetén az alkalmazás leállása a migráció megkezdésekor kezdődik.
Az adatbázis migrálásának figyelése
Az adatbázis migrálásának figyeléséhez válassza az Adatbázis-áttelepítési szolgáltatás példányának Áttekintés panelén az Áttelepítések figyelése lehetőséget.
Az Áttelepítések lapon nyomon követheti a folyamatban lévő, befejezett és sikertelen migrálásokat (ha vannak ilyenek), vagy megtekintheti az összes adatbázis-áttelepítést. A menüsávon válassza a Frissítés lehetőséget az áttelepítés állapotának frissítéséhez.
A Database Migration Service a legújabb ismert migrálási állapotot adja vissza minden egyes áttelepítési állapot frissítésekor. Az alábbi táblázat a lehetséges állapotokat ismerteti:
Státusz Leírás Létrehozás A szolgáltatás megkezdi a migrálást. Előkészítés másolásra A szolgáltatás letiltja az automatikus állapotokat, az eseményindítókat és az indexeket a céltáblában. Másolás Az adatok át lesznek másolva a forrásadatbázisból a céladatbázisba. Másolás befejezve Az adatmásolás befejeződött. A szolgáltatás a többi táblára vár, hogy befejezze a másolást, hogy megkezdje a táblák eredeti sémába való visszatérésének utolsó lépéseit. Indexek újraépítése A szolgáltatás újraépíti az indexeket a céltáblákon. Sikerült Minden adat másolása és az indexek újraépítése történik. A Forrásnév csoportban válasszon egy adatbázisnevet a táblanézet megnyitásához. Ebben a részletes nézetben láthatja az áttelepítés aktuális állapotát, az adott állapotban lévő táblák számát és az egyes táblák részletes állapotát:
Amikor az összes táblaadatot az Azure SQL Database-célba migrálja, a Database Migration Service frissíti a folyamatban lévőről a sikeresre történő migrálási állapotot.
Megjegyzés:
A Database Migration Service úgy optimalizálja az áttelepítést, hogy kihagyja az adatokat nem tartalmazó táblákat (0 sor). Az adatokkal nem rendelkező táblák nem jelennek meg a listában, még akkor sem, ha a táblákat az áttelepítés létrehozásakor választotta ki.
Befejezte a migrálást az Azure SQL Database-be. A migrálást követő feladatok sorozata biztosítja, hogy minden zökkenőmentesen és hatékonyan működjön.
Korlátozások
Az Azure SQL Database offline migrálása az Azure Data Factory (ADF) folyamatait használja az adatáthelyezéshez, és így betartja az ADF-korlátozásokat. Az adatbázis-migrálási szolgáltatás létrehozásakor létrejön egy megfelelő ADF. Így a gyári korlátozások szolgáltatásonként érvényesek.
- A gép, amelyen az SHIR telepítve van, látja el a migrációhoz szükséges számítási feladatokat. Győződjön meg arról, hogy ez a gép képes kezelni az adatmásolás processzor- és memóriaterhelését. További információ: Saját üzemeltetésű integrációs modul létrehozása és konfigurálása.
- Adatbázis-korlátonként 100 000 tábla.
- Szolgáltatásonként 10 000 egyidejű adatbázis-áttelepítés.
- A migrálás sebessége nagymértékben függ a célul kitűzött Azure SQL Database SKU-tól és az önállóan üzemeltetett integrációs futtatókörnyezettől.
- Az Azure SQL Database migrálása rosszul skálázható táblaszámokkal, mivel az ADF többletterhelést okoz az indítási tevékenységekben. Ha egy adatbázis több ezer táblával rendelkezik, az egyes táblák indítási folyamata eltarthat néhány másodpercig, még akkor is, ha egy 1 bites adatsorból állnak.
- Az Azure SQL Database táblanevek, amelyek kétbájtos karaktereket tartalmaznak, jelenleg nem támogatottak a migráláshoz. A megoldás a táblák áttelepítés előtti átnevezése; a sikeres migrálás után visszaválthatók az eredeti nevükre.
- Előfordulhat, hogy a nagyméretű bloboszlopokkal rendelkező táblák áttelepítése időtúllépés miatt meghiúsul.
- A SQL Server által fenntartott adatbázisnevek jelenleg nem támogatottak.
- A pontosvesszőket tartalmazó adatbázisnevek jelenleg nem támogatottak.
- A számított oszlopok nem lesznek migrálva.
- A forrásadatbázis azon oszlopai, amelyek alapértelmezett korlátozásokkal rendelkeznek és értékeket tartalmaznak
NULL, a rendszer a NULL-ek megtartása helyett a cél Azure SQL-adatbázisban az alapértelmezett értékekkel együtt migrálja őket.