Az Azure SQL Database-ben beállíthat egy hosszú távú biztonsági mentés-megőrzési (LTR) szabályzatot, amely automatikusan megőrzi a biztonsági másolatokat a különálló Azure Blob Storage-tárolókban akár 10 évig. Ezt követően az Azure Portal, az Azure CLI vagy a PowerShell használatával helyreállíthatja az adatbázist ezekkel a biztonsági másolatokkal.
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
A PowerShell Azure Resource Manager modult továbbra is támogatja az Azure SQL Database, de minden jövőbeli fejlesztés az Az.Sql modulhoz tartozik. Ezekhez a parancsmagokhoz lásd: AzureRM.Sql. Az Az modulban és az AzureRm-modulokban található parancsok argumentumai lényegében azonosak.
A Get-AzSqlDatabaseLongTermRetentionBackup következő Restore-AzSqlDatabaseszerepkörök egyikének kell lennie:
Az SQL Server közreműködői szerepköre nem rendelkezik engedéllyel az LTR-biztonsági mentések törlésére.
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 kiszolgálóhoz tartozó LTR-biztonsági másolatok eléréséhez azonban ezt az engedélyt a kiszolgáló előfizetési hatókörében kell megadni:
Az SQL Database-t ú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 lépjen a kiszolgálóra, majd válassza a Biztonsági másolatok lehetőséget. A biztonsági mentés adatmegőrzési beállításainak módosításához válassza az Adatmegőrzési szabályzatok lapot.
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 nem kijelölt adatbázisokra nem lesz hatással.
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.
Válassza az Alkalmaz lehetőséget, ha a kiválasztott adatmegőrzési beállításokat az összes kijelölt adatbázisra alkalmazni szeretné.
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 db 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 db ltr-policy set \
--resource-group mygroup \
--server myserver \
--name mydb \
--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 sql db ltr-policy set \
--resource-group mygroup \
--server myserver \
--name mydb \
--weekly-retention "P12W" \
--yearly-retention "P5Y" \
--week-of-year 16
# get the SQL server
$subId = "<subscriptionId>"
$serverName = "<serverName>"
$resourceGroup = "<resourceGroupName>"
$dbName = "<databaseName>"
Connect-AzAccount
Select-AzSubscription -SubscriptionId $subId
$server = Get-AzSqlServer -ServerName $serverName -ResourceGroupName $resourceGroup
# create LTR policy with WeeklyRetention = 12 weeks. MonthlyRetention and YearlyRetention = 0 by default.
Set-AzSqlDatabaseBackupLongTermRetentionPolicy -ServerName $serverName -DatabaseName $dbName `
-ResourceGroupName $resourceGroup -WeeklyRetention P12W
# create LTR policy with WeeklyRetention = 12 weeks, YearlyRetention = 5 years and WeekOfYear = 16 (week of April 15). MonthlyRetention = 0 by default.
Set-AzSqlDatabaseBackupLongTermRetentionPolicy -ServerName $serverName -DatabaseName $dbName `
-ResourceGroupName $resourceGroup -WeeklyRetention P12W -YearlyRetention P5Y -WeekOfYear 16
Biztonsági másolatok megtekintése és visszaállítás biztonsági másolatból
Tekintse meg azokat a biztonsági másolatokat, amelyek egy adott adatbázishoz LTR-szabályzattal vannak megőrzve, és visszaállíthatók ezekből a biztonsági másolatokból.
Az Azure Portalon lépjen a kiszolgálóra, majd 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álasszon ki egy biztonsági másolatot, amelyből vissza szeretne állítani.
Ha egy elérhető LTR-biztonsági mentésből szeretne visszaállítani, válassza ki azt a biztonsági másolatot, amelyből vissza szeretné állítani, majd válassza a Visszaállítás lehetőséget.
Válasszon nevet az új adatbázisnak, majd válassza a Véleményezés + Létrehozás lehetőséget a visszaállítás részleteinek áttekintéséhez. A Létrehozás gombra kattintva visszaállíthatja az adatbázist a kiválasztott biztonsági másolatból.
Az eszköztáron válassza az értesítés ikont a visszaállítási feladat állapotának megtekintéséhez.
A visszaállítási feladat befejezése után nyissa meg az SQL-adatbázisok lapot az újonnan visszaállított adatbázis megtekintéséhez.
Futtassa az az sql db ltr-policy show parancsot egyetlen adatbázis LTR-szabályzatának megtekintéséhez a kiszolgálón.
az sql db ltr-policy show \
--resource-group mygroup \
--server myserver \
--name mydb
LTR biztonsági másolatok megtekintése
Az az sql db ltr-backup list paranccsal listázhatja az adatbázis LTR-biztonsági mentéseit. Ezzel a paranccsal megkeresheti a name más parancsokban használható paramétert.
az sql db ltr-backup list \
--location eastus2 \
--server myserver \
--database mydb
Állítsa vissza az adatbázist az LTR biztonsági mentéséből.
az sql db ltr-backup restore \
--dest-database targetdb \
--dest-server myserver \
--dest-resource-group mygroup \
--backup-id $get_backup_id
Fontos
A kiszolgáló vagy erőforráscsoport törlése után LTR biztonsági másolatból való visszaállításhoz a kiszolgáló előfizetésére vonatkozó engedélyekkel kell rendelkeznie, és az előfizetésnek aktívnak kell lennie. A választható -ResourceGroupName paramétert is ki kell hagynia.
Megjegyzés:
Innen csatlakozhat a visszaállított adatbázishoz az SQL Server Management Studio használatával a szükséges feladatok elvégzéséhez, például az adatbázis-felcseréléshez. 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 kiszolgálón belül.
# get all LTR policies within a server
$ltrPolicies = Get-AzSqlDatabase -ResourceGroupName $resourceGroup -ServerName $serverName | `
Get-AzSqlDatabaseLongTermRetentionPolicy
# get the LTR policy of a specific database
$ltrPolicies = Get-AzSqlDatabaseBackupLongTermRetentionPolicy -ServerName $serverName -DatabaseName $dbName `
-ResourceGroupName $resourceGroup
LTR-szabályzat törlése
Ez a példa bemutatja, hogyan törölhet egy LTR-szabályzatot egy adatbázisból.
Ez a példa bemutatja, hogyan listázhatja az LTR biztonsági mentéseit egy kiszolgálón belül.
# 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
$ltrBackups = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location
# get the list of LTR backups from the Azure region under the named server
$ltrBackups = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location -ServerName $serverName
# get the LTR backups for a specific database from the Azure region under the named server
$ltrBackups = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location -ServerName $serverName -DatabaseName $dbName
# list LTR backups only from live databases (you have option to choose All/Live/Deleted)
$ltrBackups = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location -DatabaseState Live
# only list the latest LTR backup for each database
$ltrBackups = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location -ServerName $serverName -OnlyLatestPerDatabase
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 server $serverName of the resource group $resourceGroup
Restore-AzSqlDatabase -FromLongTermRetentionBackup -ResourceId $ltrBackup.ResourceId -ServerName $serverName -ResourceGroupName $resourceGroup `
-TargetDatabaseName $dbName -ServiceObjectiveName P1
Fontos
A kiszolgáló vagy erőforráscsoport törlése után LTR biztonsági másolatból való visszaállításhoz a kiszolgáló előfizetésére vonatkozó engedélyekkel kell rendelkeznie, és az előfizetésnek aktívnak kell lennie. You must also omit the optional -ResourceGroupName parameter.
Ha LTR biztonsági másolatokat használ a megfelelőség vagy más kritikus fontosságú követelmények teljesítéséhez, fontolja meg rendszeres helyreállítási próbák elvégzését annak ellenőrzéséhez, hogy az LTR biztonsági másolatok visszaállíthatók-e, és hogy a visszaállítás a várt adatbázis-állapotot eredményez-e.
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 mentést a kiszolgáló 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 lépjen az Azure SQL Database logikai kiszolgálójára.
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.
Ha LTR biztonsági másolatokat használ a megfelelőség vagy más kritikus fontosságú követelmények teljesítéséhez:
Ellenőrizze, hogy az LTR biztonsági másolatai a konfigurált szabályzatnak megfelelően készültek-e. Ehhez kövesse a Biztonsági mentések megtekintése szakaszban ismertetett lépéseket a Portal, az Azure CLI vagy a PowerShell használatával.
Fontolja meg rendszeres helyreállítási próbák elvégzését annak ellenőrzéséhez, hogy az LTR biztonsági másolatok visszaállítása az adatbázis várt állapotát eredményezi-e.
Kapcsolódó tartalom
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.