A felügyelt Azure SQL-példányban konfigurálhat egy hosszú távú biztonsági mentési adatmegőrzési szabályzatot (LTR). Ez lehetővé teszi az adatbázisok biztonsági mentésének automatikus megőrzését különálló Azure Blob Storage-tárolókban akár 10 évig. Ezt követően az Azure Portal és a PowerShell segítségével helyreállíthatja az adatbázist ezekkel a biztonsági másolatokkal.
Az alábbi szakaszok bemutatják, hogyan konfigurálhatja az Azure Portalt, a PowerShellt és az Azure CLI-t a hosszú távú biztonsági mentések megőrzésének konfigurálásához, hogyan tekintheti meg a biztonsági másolatokat az Azure SQL Storage-ban, és hogyan állíthatja vissza az Azure SQL Storage-beli biztonsági másolatokat.
Ha inkább helyi cli-referenciaparancsokat szeretne futtatni, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszert használ, fontolja meg az Azure CLI Docker-tárolóban való futtatását. További információ: Az Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd : Bejelentkezés az Azure CLI-vel.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
A környezet előkészítése a PowerShellhez.
Megjegyzés:
Ez a cikk az Azure Az PowerShell-modult használja, amely az Azure-ral való interakcióhoz ajánlott PowerShell-modul. Az Az PowerShell-modul használatának megkezdéséhez lásd az Azure PowerShell telepítését ismertető szakaszt. To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.
Fontos
Az Azure SQL Database továbbra is támogatja a PowerShell Azure Resource Manager modult, de a jövőbeli fejlesztés az Az.Sql modulban történik. Ezekhez a parancsmagokhoz lásd: AzureRM.Sql. Az Az modulban és az AzureRm-modulokban található parancsok argumentumai lényegében azonosak.
A Get-AzSqlInstanceDatabaseLongTermRetentionBackup következő Restore-AzSqlInstanceDatabaseszerepkörök egyikének kell lennie:
Előfizetés-tulajdonosi szerepkör vagy
FELÜGYELT SQL-példány közreműködői szerepköre vagy
A felügyelt SQL-példány közreműködői szerepköre nem rendelkezik engedéllyel az LTR-biztonsági mentések törléséhez.
Az Azure szerepköralapú hozzáférés-vezérlési (RBAC) engedélyeit előfizetésben vagy erőforráscsoport-hatókörben is meg lehet adni. Az elvetett példányhoz tartozó LTR biztonsági mentés elérése esetén az engedély megadásának az adott példányhoz kapcsolódó előfizetés hatókörében kell történnie.
Hosszú távú adatmegőrzési szabályzatok létrehozása
A felügyelt SQL-példányt úgy konfigurálhatja, hogy az automatikus biztonsági másolatokat a szolgáltatási szint megőrzési időszakánál hosszabb ideig őrizze meg.
Az Azure Portalon válassza ki a felügyelt példányt, majd válassza a Biztonsági másolatok lehetőséget. Az Adatmegőrzési szabályzatok lapon válassza ki az adatbázis(ok)t, amelyen hosszú távú biztonsági mentési megőrzési szabályzatokat szeretne beállítani vagy módosítani. A módosítások nem vonatkoznak a kijelöletlenül hagyott adatbázisokra.
A Szabályzatok konfigurálása panelen adja meg a heti, havi vagy éves biztonsági mentések megőrzési idejét. Válasszon egy "0" megőrzési időtartamot, amely azt jelzi, hogy nem kell hosszú távú biztonsági mentési megőrzést beállítani.
Ha elkészült, válassza az Alkalmaz lehetőséget.
Fontos
Ha engedélyezi a hosszú távú biztonsági mentési megőrzési szabályzatot, akár 7 napig is eltarthat, amíg az első biztonsági mentés láthatóvá válik, és elérhető lesz a visszaállításhoz. Az LTR biztonsági mentési ütemének részleteiért tekintse meg a biztonsági mentés hosszú távú megőrzését.
Futtassa az az sql midb show parancsot a felügyelt SQL-példány adatbázisának részleteinek lekéréséhez.
az sql midb show /
--resource-group mygroup /
--managed-instance myinstance /
--name mymanageddb /
--subscription mysubscription
Futtassa az az sql midb ltr-policy set parancsot egy LTR-szabályzat létrehozásához. Az alábbi példa egy hosszú távú adatmegőrzési szabályzatot állít be 12 hétre a heti biztonsági mentéshez.
az sql midb ltr-policy set /
--resource-group mygroup /
--managed-instance myinstance /
--name mymanageddb /
--weekly-retention "P12W"
Ez a példa egy megőrzési szabályzatot állít be a heti biztonsági mentéshez 12 hétre, az éves biztonsági mentéshez 5 évre, valamint az április 15-i hétre, amelyben az éves LTR biztonsági mentést kell elvégezni.
Az Azure Portalról elérhető hosszú távú biztonsági mentések megtekintéséhez kövesse az alábbi lépéseket:
Az Azure Portalon válassza ki a felügyelt példányt, majd válassza a Biztonsági másolatok lehetőséget. Az Elérhető biztonsági másolatok lapon válassza ki azt az adatbázist, amelyhez az elérhető biztonsági másolatokat meg szeretné tekinteni. Válassza a Kezelés lehetőséget.
A Biztonsági másolatok kezelése panelen tekintse át az elérhető biztonsági másolatokat.
Ezen a lapon a biztonsági mentés kiválasztásával és a Visszaállítás lehetőség kiválasztásával is visszaállíthatja a visszaállítást.
Másik lehetőségként, ha az Azure Portal használatával szeretne visszaállítani egy biztonsági másolatot a hosszú távú megőrzésről, kövesse az alábbi lépéseket:
Nyissa meg azt a felügyelt SQL-példányt, ahová vissza szeretné állítani az adatbázist.
Az Áttekintés lapon válassza az + Új adatbázis lehetőséget az Azure SQL Managed Database létrehozása lap megnyitásához.
Az Azure SQL Managed Database létrehozása lap Alapismeretek lapján adja meg az előfizetés és az erőforráscsoport adatait a Project részletei alatt. Ezután az Adatbázis adatai csoportban adja meg a visszaállítani kívánt adatbázis új nevét. Ellenőrizze, hogy a megfelelő felügyelt példány szerepel-e a legördülő listában. Ezután válassza a Tovább: Adatforrás lehetőséget >
Az Adatforrás lapon válassza az Időponthoz kötött visszaállítás lehetőséget a Meglévő adatok használata területen. Adja meg a forrásadatbázist tartalmazó előfizetést, erőforráscsoportot és felügyelt példányt. A felügyelt adatbázis legördülő listájában válassza ki a visszaállítani kívánt adatbázist, majd válassza ki azt a pontot, ahonnan vissza szeretné állítani az adatbázist. A forrás- és célpéldány lehet ugyanaz, vagy két különböző példány. Válassza a Tovább elemet: További beállítások >
A További beállítások lapon bejelölheti a jelölőnégyzetet, hogy örökölje a forrásadatbázis adatmegőrzési szabályzatát, vagy másik lehetőségként a Megőrzés konfigurálása lehetőséget választva megnyithatja a Házirendek konfigurálása lapot, és beállíthatja a visszaállított adatbázis kívánt adatmegőrzési szabályzatait. Ha végzett, válassza a Véleményezés + létrehozás lehetőséget.
Ha az ellenőrzés sikeres, válassza a Létrehozás lehetőséget az adatbázis visszaállításához.
Ez a művelet elindítja a visszaállítási folyamatot, amely létrehoz egy új adatbázist, és feltölti az eredeti adatbázisból származó adatokkal a megadott időpontban. A helyreállítási folyamatról további információt a helyreállítási idő című témakörben talál.
To restore from an LTR backup after the instance has been deleted, you must have permissions scoped to the subscription of the instance and that subscription must be active.
Megjegyzés:
Innen az SQL Server Management Studióval csatlakozhat a visszaállított adatbázishoz a szükséges feladatok végrehajtásához, például egy adatelem kinyeréséhez a visszaállított adatbázisból a meglévő adatbázisba való beillesztés érdekében, vagy a meglévő adatbázis törléséhez és a visszaállított adatbázis átnevezéséhez a meglévő adatbázis nevére. Lásd az időpont visszaállítását.
LTR-szabályzatok megtekintése
Ez a példa bemutatja, hogyan listázhatja az LTR-szabályzatokat egy példányon belül egyetlen adatbázishoz.
# gets the current version of LTR policy for a database
$LTRPolicy = @{
InstanceName = $instanceName
DatabaseName = $dbName
ResourceGroupName = $resourceGroup
}
Get-AzSqlInstanceDatabaseBackupLongTermRetentionPolicy @LTRPolicy
Ez a példa bemutatja, hogyan listázhatja az összes adatbázis LTR-szabályzatait egy példányon.
# gets the current version of LTR policy for all of the databases on an instance
$Databases = Get-AzSqlInstanceDatabase -ResourceGroupName $resourceGroup -InstanceName $instanceName
$LTRParams = @{
InstanceName = $instanceName
ResourceGroupName = $resourceGroup
}
foreach($database in $Databases.Name){
Get-AzSqlInstanceDatabaseBackupLongTermRetentionPolicy @LTRParams -DatabaseName $database
}
LTR-szabályzat törlése
Ez a példa bemutatja, hogyan törölhet egy LTR-szabályzatot egy adatbázisból.
# remove the LTR policy from a database
$LTRPolicy = @{
InstanceName = $instanceName
DatabaseName = $dbName
ResourceGroupName = $resourceGroup
RemovePolicy = $true
}
Set-AzSqlInstanceDatabaseBackupLongTermRetentionPolicy @LTRPolicy
LTR biztonsági másolatok megtekintése
Ez a példa bemutatja, hogyan listázhatja az LTR biztonsági másolatait egy példányon belül.
$instance = Get-AzSqlInstance -Name $instanceName -ResourceGroupName $resourceGroup
# get the list of all LTR backups in a specific Azure region
# backups are grouped by the logical database id, within each group they are ordered by the timestamp, the earliest backup first
Get-AzSqlInstanceDatabaseLongTermRetentionBackup -Location $instance.Location
# get the list of LTR backups from the Azure region under the given managed instance
$LTRBackupParam = @{
Location = $instance.Location
InstanceName = $instanceName
}
Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
# get the LTR backups for a specific database from the Azure region under the given managed instance
$LTRBackupParam = @{
Location = $instance.Location
InstanceName = $instanceName
DatabaseName = $dbName
}
Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
# list LTR backups only from live databases (you have option to choose All/Live/Deleted)
$LTRBackupParam = @{
Location = $instance.Location
DatabaseState = 'Live'
}
Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
# only list the latest LTR backup for each database
$LTRBackupParam = @{
Location = $instance.Location
InstanceName = $instanceName
OnlyLatestPerDatabase = $true
}
Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
Visszaállítás LTR biztonsági másolatokból
Ez a példa bemutatja, hogyan állítható vissza LTR biztonsági másolatból. Vegye figyelembe, hogy ez a felület nem változott, de az erőforrás-azonosító paraméterhez szükség van az LTR biztonsági mentési erőforrás-azonosítóra.
# restore a specific LTR backup as an P1 database on the instance $instanceName of the resource group $resourceGroup
$LTRBackupParam = @{
Location = $instance.Location
InstanceName = $instanceName
DatabaseName = $dbname
OnlyLatestPerDatabase = $true
}
$ltrBackup = Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
$RestoreLTRParam = @{
TargetInstanceName = $instanceName
TargetResourceGroupName = $resourceGroup
TargetInstanceDatabaseName = $dbName
FromLongTermRetentionBackup = $true
ResourceId = $ltrBackup.ResourceId
}
Restore-AzSqlInstanceDatabase @RestoreLTRParam
Fontos
To restore from an LTR backup after the instance has been deleted, you must have permissions scoped to the subscription of the instance and that subscription must be active. A választható -ResourceGroupName paramétert is ki kell hagynia.
Megjegyzés:
Innen az SQL Server Management Studióval csatlakozhat a visszaállított adatbázishoz a szükséges feladatok végrehajtásához, például egy adatelem kinyeréséhez a visszaállított adatbázisból a meglévő adatbázisba való beillesztés érdekében, vagy a meglévő adatbázis törléséhez és a visszaállított adatbázis átnevezéséhez a meglévő adatbázis nevére. Lásd az időpont visszaállítását.
LTR-biztonsági másolatok törlése
Törölje azokat a biztonsági másolatokat, amelyeket egy adott adatbázishoz őriznek meg LTR-szabályzattal.
Fontos
Az LTR biztonsági mentésének törlése nem visszafordítható. Ha törölni szeretne egy LTR-biztonsági másolatot a példány törlése után, előfizetési hatókörrel kell rendelkeznie. Az Azure Monitorban az egyes törlésekről értesítéseket állíthat be a "Hosszú távú adatmegőrzési biztonsági mentés törlése" művelet szűrésével. A tevékenységnapló információkat tartalmaz arról, hogy ki és mikor kérte a kérelmet. Részletes útmutatásért lásd: Tevékenységnapló-riasztások létrehozása.
Az Azure Portalon keresse meg a felügyelt SQL-példányt.
Válassza a Biztonsági másolatok lehetőséget. Ha meg szeretné tekinteni egy adott adatbázis rendelkezésre álló LTR biztonsági másolatait, válassza a Kezelés lehetőséget az Elérhető LTR biztonsági másolatok oszlop alatt. Megjelenik egy panel a kijelölt adatbázis rendelkezésre álló LTR biztonsági másolatainak listájával.
A megjelenő Elérhető LTR biztonsági másolatok panelen tekintse át az elérhető biztonsági másolatokat. Válassza ki a törölni kívánt biztonsági másolatot. Select Delete.
Ez a példa bemutatja, hogyan törölheti a legkorábbi LTR biztonsági mentést a biztonsági másolatok listájából. Ez a minta lekéri egy adott adatbázis LTR-biztonsági mentéseinek listáját az adott felügyelt SQL-példány alatti Azure-régióból.
# remove the earliest backup
# get the LTR backups for a specific database from the Azure region under the given SQL managed instance
$LTRBackupParam = @{
Location = $instance.Location
InstanceName = $instanceName
DatabaseName = $dbName
}
$ltrBackups = Get-AzSqlInstanceDatabaseLongTermRetentionBackup @LTRBackupParam
$ltrBackup = $ltrBackups[0]
Remove-AzSqlInstanceDatabaseLongTermRetentionBackup -ResourceId $ltrBackup.ResourceId
Következő lépések
A szolgáltatás által létrehozott automatikus biztonsági másolatokkal kapcsolatos további információkért lásd az automatikus biztonsági másolatokkal foglalkozó témakört.