Adatbázis tranzakciós konzisztens másolatának másolása az Azure SQL Database-ben
A következőkre vonatkozik:Azure SQL Database
Az Azure SQL Database számos módszert kínál egy meglévő adatbázis másolatának létrehozására, ugyanazon az Azure SQL Database logikai kiszolgálón vagy egy másik logikai kiszolgálón. Az adatbázisokat az Azure Portal, a PowerShell, az Azure CLI vagy a Transact-SQL használatával másolhatja.
Jegyzet
Microsoft Entra ID korábban Azure Active Directory (Azure AD) néven ismert.
Áttekintés
Az adatbázis-másolat a forrásadatbázis tranzakciósan konzisztens pillanatképe a másolási kérelem kezdeményezésének időpontjában. Kiválaszthatja ugyanazt a logikai kiszolgálót vagy egy másik logikai kiszolgálót a másoláshoz. Dönthet úgy is, hogy megtartja a forrásadatbázis biztonsági mentési redundanciát és számítási méretét, vagy más biztonsági mentési tárterület-redundanciát és/vagy számítási méretet használ ugyanazon a szolgáltatási szinten belül. A Standard szolgáltatási szinten lévő adatbázisokat a Standard vagy az Általános célú szintre, valamint a Prémium szolgáltatási szinten lévő adatbázist is átmásolhatja a prémium vagy üzleti szempontból kritikus szintre.
A másolás befejezése után az új adatbázis teljesen működőképes és független adatbázis a forrásadatbázishoz. A másolt adatbázisban lévő bejelentkezések, felhasználók és engedélyek a forrásadatbázistól függetlenül kezelhetők. A másolat georeplikációs technológiával jön létre. A replika bevetésének befejezése után a georeplikációs kapcsolat automatikusan leáll. A georeplikációs műveletek használatára vonatkozó összes követelmény az adatbázis másolási műveletére vonatkozik. A részletekért lásd az aktív georeplikációs áttekintést.
Jegyzet
Az Azure Portal , a PowerShell és az Azure CLI nem támogatja az adatbázis más előfizetésbe való másolását.
Rugalmas skálázású adatbázisok adatbázis-másolása
A hiperskálás szolgáltatási rétegadatbázisai esetében a céladatbázis határozza meg, hogy a másolat gyors másolat, vagy adatméret-másolat-e.
Gyors másolási: Ha a másolat a forrással azonos régióban történik, a másolat a blobok pillanatképeiből jön létre, ez a másolat az adatbázis méretétől függetlenül gyors művelet.
Adatméret-másolat: Ha a céladatbázis más régióban van, mint a forrás, vagy ha a céldatabázis biztonsági mentési tároló redundanciája (Helyi, Zonal, Geo) eltér a forrásadatbázisétól, akkor a másolási művelet egy adatméret-művelet. A másolási idő nem arányos közvetlenül a méretével, mivel a lapkiszolgáló blobok párhuzamos másolása folyamatban van.
Bejelentkezések az adatbázis másolatában
Amikor egy adatbázist ugyanarra a logikai kiszolgálóra másol, mindkét adatbázisban ugyanazokat a bejelentkezéseket használhatja. Az adatbázis másolásához használt biztonsági tag lesz az adatbázis tulajdonosa az új adatbázisban.
Amikor egy adatbázist egy másik logikai kiszolgálóra másol, a cél logikai kiszolgálón a másolási műveletet kezdeményező biztonsági tag lesz az új adatbázis tulajdonosa.
A célkiszolgálótól függetlenül a rendszer minden adatbázis-felhasználót, engedélyt és biztonsági azonosítót (SID-t) átmásol az adatbázis-másolatba. Ha tartalmazott adatbázis-felhasználókat az adathozzáféréshez, akkor a másolt adatbázis ugyanazokkal a felhasználói hitelesítő adatokkal rendelkezik, így a másolás befejezése után azonnal elérheti ugyanazokkal a hitelesítő adatokkal.
Ha kiszolgálószintű bejelentkezéseket használ az adathozzáféréshez, és az adatbázist egy másik kiszolgálóra másolja, előfordulhat, hogy a bejelentkezési alapú hozzáférés nem működik. Ez azért fordulhat elő, mert a bejelentkezések nem léteznek a cél logikai kiszolgálón, vagy azért, mert ezek a jelszavak és biztonsági azonosítók (SID-k) eltérőek. Ha többet szeretne megtudni a bejelentkezések kezeléséről, amikor egy adatbázist egy másik kiszolgálóra másol, tekintse meg a Azure SQL Database biztonságának konfigurálása és kezelése georestore vagy feladatátvétel esetén-bejegyzést. Miután a másolási művelet egy másik logikai kiszolgálóra sikeres volt, és a többi felhasználó újraleképezése előtt csak az adatbázis tulajdonosához társított bejelentkezés vagy a kiszolgáló rendszergazdája tud bejelentkezni a másolt adatbázisba. A bejelentkezések feloldásáról és az adathozzáférés létrehozásáról a másolási művelet befejezése után a Bejelentkezések feloldásacímű témakörben olvashat.
Másolás az Azure Portal használatával
Ha az Azure Portallal szeretne adatbázist másolni, nyissa meg az adatbázis lapját, majd válassza a másolása lehetőséget az SQL Database létrehozása – Adatbázis másolása lap megnyitásához. Adja meg annak a cél logikai kiszolgálónak az értékeit, ahová az adatbázist át szeretné másolni.
Adatbázis másolása
Az adatbázist a PowerShell, az Azure CLI és a Transact-SQL (T-SQL) használatával másolhatja.
PowerShell esetén használja a New-AzSqlDatabaseCopy parancsmagot.
Fontos
A PowerShell Azure Resource Manager (RM) modult továbbra is támogatja az Azure SQL Database, de minden jövőbeli fejlesztés az Az.Sql modulhoz tartozik. Az AzureRM-modul legalább 2020 decemberéig továbbra is megkapja a hibajavításokat. Az Az modulban és az AzureRm-modulokban található parancsok argumentumai lényegében azonosak. További információ a kompatibilitásukról: Az Új Azure PowerShell Az modul bemutatása.
New-AzSqlDatabaseCopy -ResourceGroupName "<resourceGroup>" -ServerName $sourceserver -DatabaseName "<databaseName>" `
-CopyResourceGroupName "myResourceGroup" -CopyServerName $targetserver -CopyDatabaseName "CopyOfMySampleDatabase"
Az adatbázis másolása aszinkron művelet, de a céladatbázis közvetlenül a kérés elfogadása után jön létre. Ha a másolási művelet még folyamatban van és meg kell szakítania, törölje a céladatbázist a Remove-AzSqlDatabase parancsmaggal.
A teljes PowerShell-példaszkriptért lásd: Adatbázis másolása új logikai kiszolgálóra.
A másolási művelet előrehaladásának figyelése
A másolási folyamat figyelése a sys.databases, sys.dm_database_copiesés sys.dm_operation_status nézetek lekérdezésével. Amíg a másolás folyamatban van, az új adatbázis sys.databases
nézetének state_desc
oszlopa COPYING
.
- Ha a másolás sikertelen, az új adatbázis
sys.databases
nézeténekstate_desc
oszlopaSUSPECT
értékre van állítva. Hajtsa végre a DROP utasítást az új adatbázisban, majd próbálkozzon újra később. - Ha a másolás sikeres, az új adatbázis
sys.databases
nézeténekstate_desc
oszlopaONLINE
értékre van állítva. A másolás befejeződött, és az új adatbázis egy normál adatbázis, amely a forrásadatbázistól függetlenül módosítható.
Jegyzet
Ha úgy dönt, hogy megszakítja a másolást, amíg folyamatban van, hajtsa végre a DROP DATABASE utasítást az új adatbázisban.
Fontos
Ha a forrásnál lényegesen kisebb szolgáltatási célkitűzéssel rendelkező példányt kell létrehoznia, előfordulhat, hogy a céladatbázis nem rendelkezik elegendő erőforrással a bevetési folyamat befejezéséhez, és ez a másolási művelet meghiúsulását okozhatja. Ebben a forgatókönyvben használjon geo-visszaállítási kérelmet, hogy létrehozzon egy másolatot egy másik logikai kiszolgálón és/vagy egy másik régióban. További információ: Azure SQL Database helyreállítása adatbázis-biztonsági másolatokkal.
Engedélyek
Adatbázis-másolat létrehozásához a következő szerepkörökben kell lennie:
- Előfizetés tulajdonosa vagy
- SQL Server-közreműködői szerepkör vagy
- Egyéni szerepkör a forrás logikai kiszolgálón a következő engedélyekkel:
Microsoft.Sql/servers/databases/read
-
Microsoft.Sql/servers/databases/write
és
- Egyéni szerepkör a cél logikai kiszolgálón a következő engedélyekkel:
Microsoft.Sql/servers/read
Microsoft.Sql/servers/databases/read
Microsoft.Sql/servers/databases/write
Az adatbázis másolatának megszakításához a következő szerepkörökben kell lennie:
- Előfizetés tulajdonosa vagy
- SQL Server-közreműködői szerepkör vagy
- Egyéni szerepkör a céladatbázison a következő engedéllyel:
Microsoft.Sql/servers/databases/delete
Az adatbázis-másolás Azure Portalon történő kezeléséhez a következő engedélyekre is szüksége van:
Microsoft.Resources/subscriptions/resources/read
Microsoft.Resources/deployments/read
Microsoft.Resources/deployments/write
Microsoft.Resources/deployments/operationstatuses/read
Ha a portál erőforráscsoportjában a telepítések alatt szeretné látni a műveleteket, a több erőforrás-szolgáltatót is érintő műveleteket, beleértve az SQL-műveleteket, az alábbi további engedélyekre van szüksége:
Microsoft.Resources/subscriptions/resourcegroups/deployments/operations/read
Microsoft.Resources/subscriptions/resourcegroups/deployments/operationstatuses/read
Bejelentkezések feloldása
Miután az új adatbázis online állapotban van a cél logikai kiszolgálón, a ALTER USER utasítással újraképezi a felhasználókat az új adatbázisból a cél logikai kiszolgálón való bejelentkezésekhez. Az árva felhasználók megoldásáról Az árva felhasználók hibaelhárításacímű témakörben olvashat. Lásd még Az Azure SQL Database biztonságának konfigurálása és kezelése geovisszaállítás vagy feladatátvétel esetén.
Az új adatbázis minden felhasználója megőrzi a forrásadatbázisban lévő engedélyeit. Az adatbázis-másolást kezdeményező felhasználó lesz az új adatbázis adatbázistulajdonosa. Miután a másolás sikeres volt, és a többi felhasználó újraleképezése előtt csak az adatbázis tulajdonosa tud bejelentkezni az új adatbázisba.
Ha többet szeretne megtudni a felhasználók és a bejelentkezések kezeléséről, amikor egy adatbázist egy másik logikai kiszolgálóra másol, olvassa el a Azure SQL Database biztonságának konfigurálása és kezelése geo-helyreállítás vagy feladatátvétel esetén.
Adatbázis másolási hibái
Az adatbázis Azure SQL Database-ben való másolása során az alábbi hibák lépnek fel. További információ: Adatbázis tranzakciós konzisztens másolatának másolása az Azure SQL Database-ben.
Hibakód | Súlyosság | Leírás |
---|---|---|
40635 | 16 | Az "%.*ls" IP-címmel rendelkező ügyfél átmenetileg le van tiltva. |
40637 | 16 | Az adatbázis-másolat létrehozása jelenleg le van tiltva. |
40561 | 16 | Az adatbázis másolása sikertelen volt. A forrás- vagy céladatbázis nem létezik. |
40562 | 16 | Az adatbázis másolása sikertelen volt. A forrásadatbázis el lett dobva. |
40563 | 16 | Az adatbázis másolása sikertelen volt. A céladatbázis el lett dobva. |
40564 | 16 | Az adatbázis másolása belső hiba miatt meghiúsult. Helyezze el a céladatbázist, és próbálkozzon újra. |
40565 | 16 | Az adatbázis másolása sikertelen volt. Ugyanazon forrásból legfeljebb 1 egyidejű adatbázis-másolás engedélyezett. Helyezze el a céladatbázist, és próbálkozzon újra később. |
40566 | 16 | Az adatbázis másolása belső hiba miatt meghiúsult. Helyezze el a céladatbázist, és próbálkozzon újra. |
40567 | 16 | Az adatbázis másolása belső hiba miatt meghiúsult. Helyezze el a céladatbázist, és próbálkozzon újra. |
40568 | 16 | Az adatbázis másolása sikertelen volt. A forrásadatbázis elérhetetlenné vált. Helyezze el a céladatbázist, és próbálkozzon újra. |
40569 | 16 | Az adatbázis másolása sikertelen volt. A céladatbázis elérhetetlenné vált. Helyezze el a céladatbázist, és próbálkozzon újra. |
40570 | 16 | Az adatbázis másolása belső hiba miatt meghiúsult. Helyezze el a céladatbázist, és próbálkozzon újra később. |
40571 | 16 | Az adatbázis másolása belső hiba miatt meghiúsult. Helyezze el a céladatbázist, és próbálkozzon újra később. |
Kapcsolódó tartalom
- Adatbázis-hozzáférés engedélyezése az SQL Database-hez, a felügyelt SQL-példányhoz és az Azure Synapse Analytics-
- Az Azure SQL Database biztonsági beállításainak konfigurálása és kezelése geo-helyreállítás vagy átállás esetén
- EXPORTÁLÁS BACPAC-fájlba – Azure SQL Database és felügyelt Azure SQL-példány