Restore-AzSqlDatabase
還原 SQL 資料庫。
語法
Restore-AzSqlDatabase
[-FromPointInTimeBackup]
-PointInTime <DateTime>
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
[-Edition <String>]
[-ServiceObjectiveName <String>]
[-ElasticPoolName <String>]
[-AsJob]
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromPointInTimeBackup]
-PointInTime <DateTime>
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
-Edition <String>
[-AsJob]
-ComputeGeneration <String>
-VCore <Int32>
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromDeletedDatabaseBackup]
[-PointInTime <DateTime>]
-DeletionDate <DateTime>
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
[-Edition <String>]
[-ServiceObjectiveName <String>]
[-ElasticPoolName <String>]
[-AsJob]
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromDeletedDatabaseBackup]
[-PointInTime <DateTime>]
-DeletionDate <DateTime>
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
-Edition <String>
[-AsJob]
-ComputeGeneration <String>
-VCore <Int32>
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromGeoBackup]
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
[-Edition <String>]
[-ServiceObjectiveName <String>]
[-ElasticPoolName <String>]
[-AsJob]
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromGeoBackup]
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
-Edition <String>
[-AsJob]
-ComputeGeneration <String>
-VCore <Int32>
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromLongTermRetentionBackup]
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
[-Edition <String>]
[-ServiceObjectiveName <String>]
[-ElasticPoolName <String>]
[-AsJob]
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Restore-AzSqlDatabase
[-FromLongTermRetentionBackup]
-ResourceId <String>
-ServerName <String>
-TargetDatabaseName <String>
-Edition <String>
[-AsJob]
-ComputeGeneration <String>
-VCore <Int32>
[-LicenseType <String>]
[-HAReplicaCount <Int32>]
[-BackupStorageRedundancy <String>]
[-ZoneRedundant]
[-Tag <Hashtable>]
[-AssignIdentity]
[-EncryptionProtector <String>]
[-UserAssignedIdentityId <String[]>]
[-KeyList <String[]>]
[-FederatedClientId <Guid>]
[-EncryptionProtectorAutoRotation]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Restore-AzSqlDatabase Cmdlet 會從異地備援備份、已刪除資料庫的備份、長期保留備份或實時資料庫中的時間點還原 SQL 資料庫。 還原的資料庫會建立為新的資料庫。 您可以將 ElasticPoolName 參數設定為現有的彈性集區,以建立彈性 SQL 資料庫。 您也可以針對 Datawarehouse 資料庫執行跨訂用帳戶還原。
範例
範例 1:從某個時間點還原資料庫
$Database = Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromPointInTimeBackup -PointInTime UTCDateTime -ResourceGroupName $Database.ResourceGroupName -ServerName $Database.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $Database.ResourceID -Edition "Standard" -ServiceObjectiveName "S2"
第一個命令會取得名為 Database01 的 SQL 資料庫,然後將它儲存在$Database變數中。 第二個命令會將 $Database 中的資料庫從指定的時間點備份還原至名為 RestoredDatabase 的資料庫。
範例 2:將資料庫從某個時間點還原至彈性集區
$Database = Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromPointInTimeBackup -PointInTime UTCDateTime -ResourceGroupName $Database.ResourceGroupName -ServerName $Database.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $Database.ResourceID -ElasticPoolName "ElasticPool01"
第一個命令會取得名為 Database01 的 SQL 資料庫,然後將它儲存在$Database變數中。 第二個命令會將 $Database 中的資料庫從指定的時間點備份還原到名為 elasticpool01 的彈性集區中名為 RestoredDatabase 的 SQL 資料庫。
範例 3:還原已刪除的資料庫
$DeletedDatabase = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate $DeletedDatabase.DeletionDate -ResourceGroupName $DeletedDatabase.ResourceGroupName -ServerName $DeletedDatabase.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $DeletedDatabase.ResourceID -Edition "Standard" -ServiceObjectiveName "S2" -PointInTime UTCDateTime
第一個命令會取得您想要使用 get-AzSqlDeletedDatabaseBackup 還原的已刪除資料庫備份。 第二個命令會使用 restore-AzSqlDatabase Cmdlet,從已刪除的資料庫備份啟動還原。 如果未指定 -PointInTime 參數,資料庫將會還原至刪除時間。
範例 4:將已刪除的資料庫還原至彈性集區
$DeletedDatabase = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName $resourceGroupName -ServerName $sqlServerName -DatabaseName 'DatabaseToRestore'
Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate $DeletedDatabase.DeletionDate -ResourceGroupName $DeletedDatabase.ResourceGroupName -ServerName $DeletedDatabase.ServerName -TargetDatabaseName "RestoredDatabase" -ResourceId $DeletedDatabase.ResourceID -ElasticPoolName "elasticpool01" -PointInTime UTCDateTime
第一個命令會取得您想要使用 get-AzSqlDeletedDatabaseBackup 還原的已刪除資料庫備份。 第二個命令會使用 restore-AzSqlDatabase ,從已刪除的資料庫備份啟動還原。 如果未指定 -PointInTime 參數,資料庫將會還原至刪除時間。
範例 5:Geo-Restore 資料庫
$GeoBackup = Get-AzSqlDatabaseGeoBackup -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01"
Restore-AzSqlDatabase -FromGeoBackup -ResourceGroupName "TargetResourceGroup" -ServerName "TargetServer" -TargetDatabaseName "RestoredDatabase" -ResourceId $GeoBackup.ResourceID -Edition "Standard" -ServiceObjectiveName "S2"
第一個命令會取得名為 Database01 的資料庫異地備援備份,然後將它儲存在$GeoBackup變數中。 第二個命令會將 $GeoBackup 中的備份還原至名為 RestoredDatabase 的 SQL 資料庫。
參數
-AsJob
在背景執行 Cmdlet
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-AssignIdentity
產生並指派此資料庫的Microsoft Entra 身分識別,以搭配 Azure KeyVault 等密鑰管理服務使用。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-BackupStorageRedundancy
用來儲存 SQL Database 備份的備份記憶體備援。 選項包括:本機、區域、地理和 GeoZone。
類型: | String |
接受的值: | Local, Zone, Geo, GeoZone |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ComputeGeneration
要指派給還原資料庫的計算產生
類型: | String |
別名: | Family |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultProfile
用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DeletionDate
將刪除日期指定為 DateTime 物件。 若要取得 DateTime 物件,請使用 Get-Date Cmdlet。
類型: | DateTime |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Edition
指定 SQL 資料庫的版本。 此參數可接受的值為:
- 沒有
- 基本
- 標準
- 獎賞
- DataWarehouse
- 自由
- 伸展
- GeneralPurpose
- BusinessCritical
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-ElasticPoolName
指定要在其中放置 SQL 資料庫的彈性集區名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-EncryptionProtector
SQL Database 的加密保護裝置密鑰。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-EncryptionProtectorAutoRotation
AKV 金鑰自動輪替狀態
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-FederatedClientId
SQL Database 的同盟用戶端標識碼。 它用於跨租使用者 CMK 案例。
類型: | Nullable<T>[Guid] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-FromDeletedDatabaseBackup
指出此 Cmdlet 會從已刪除 SQL 資料庫的備份還原資料庫。 您可以使用 Get-AzSqlDeletedDatabaseBackup Cmdlet 來取得已刪除 SQL 資料庫的備份。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-FromGeoBackup
指出此 Cmdlet 會從異地備援備份還原 SQL 資料庫。 您可以使用 Get-AzSqlDatabaseGeoBackup Cmdlet 來取得異地備援備份。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-FromLongTermRetentionBackup
指出此 Cmdlet 會從長期保留備份還原 SQL 資料庫。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-FromPointInTimeBackup
指出此 Cmdlet 會從時間點備份還原 SQL 資料庫。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-HAReplicaCount
用來儲存 SQL Database 備份的 HA 複本計數。
類型: | Int32 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-KeyList
SQL Database 的 AKV 金鑰清單。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LicenseType
Azure Sql 資料庫的授權類型。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PointInTime
指定要還原 SQL 資料庫的目標時間點,做為 DateTime 物件。
若要取得
類型: | DateTime |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-ResourceGroupName
指定此 Cmdlet 指派 SQL 資料庫的資源群組名稱。
類型: | String |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ResourceId
指定要還原的資源識別碼。
類型: | String |
別名: | Id |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ServerName
指定 SQL 資料庫伺服器的名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ServiceObjectiveName
指定服務目標的名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Tag
要與 Azure Sql Database 產生關聯的標記
類型: | Hashtable |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-TargetDatabaseName
指定要還原的資料庫名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-UserAssignedIdentityId
SQL Database 的使用者指派身分識別清單。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VCore
已還原 Azure Sql Database 的虛擬核心編號。
類型: | Int32 |
別名: | Capacity |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ZoneRedundant
要與 Azure Sql Database 建立關聯的區域備援。 此屬性僅適用於超大規模資料庫。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |