Obnovení vyhrazeného fondu SQL (dříve SQL DW) z odstraněného serveru

V tomto článku se dozvíte, jak obnovit vyhrazený fond SQL (dříve SQL DW) v Azure Synapse Analytics po náhodném vyřazení serveru pomocí PowerShellu.

Poznámka

Tyto pokyny jsou určené pouze pro samostatné vyhrazené fondy SQL (dříve SQL DW). Informace o vyhrazených fondech SQL v pracovním prostoru Azure Synapse Analytics najdete v tématu Obnovení fondu SQL z odstraněného pracovního prostoru.

Než začnete

Poznámka

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Obnovení fondu SQL z odstraněného serveru

  1. Otevřete PowerShell.

  2. Připojte se ke svému účtu Azure.

  3. Nastavte kontext na předplatné, které obsahuje vyřazený server.

  4. Zadejte přibližný čas, kdy byl server vyřazen.

  5. Vytvořte ID prostředku pro databázi, kterou chcete obnovit z vyřazeného serveru.

  6. Obnovení databáze z vyřazeného serveru

  7. Ověřte stav obnovené databáze jako online.

$SubscriptionID="<YourSubscriptionID>"
$ResourceGroupName="<YourResourceGroupName>"
$ServerName="<YourServerNameWithoutURLSuffixSeeNote>"  # Without database.windows.net
$DatabaseName="<YourDatabaseName>"
$TargetServerName="<YourtargetServerNameWithoutURLSuffixSeeNote>"  
$TargetDatabaseName="<YourDatabaseName>"

Connect-AzAccount
Set-AzContext -SubscriptionId $SubscriptionID

# Define the approximate point in time the server was dropped as DroppedDateTime "yyyy-MM-ddThh:mm:ssZ" (ex. 2022-01-01T16:15:00Z)
$PointInTime="<DroppedDateTime>" 
$DroppedDateTime = Get-Date -Date $PointInTime 

# construct the resource ID of the database you wish to recover. The format required Microsoft.Sql. This includes the approximate date time the server was dropped.
$SourceDatabaseID = "/subscriptions/"+$SubscriptionID+"/resourceGroups/"+$ResourceGroupName+"/providers/Microsoft.Sql/servers/"+$ServerName+"/restorableDroppedDatabases/"+$DatabaseName+","+$DroppedDateTime.ToUniversalTime().ToFileTimeUtc().ToString()

# Restore to target workspace with the source database.
$RestoredDatabase = Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate $DroppedDateTime -ResourceGroupName $ResourceGroupName -ServerName $TargetServerName -TargetDatabaseName $TargetDatabaseName -ResourceId $SourceDatabaseID 

# Verify the status of restored database
$RestoredDatabase.status

Řešení potíží

Pokud se při zpracování žádosti zobrazí zpráva "Při zpracování požadavku došlo k neočekávané chybě", nemusí být v původní databázi dostupné žádné body obnovení, protože původní server je krátkodobý. Obvykle to je, když server existoval méně než jednu hodinu.