Condividi tramite


Ripristinare un pool SQL dedicato (in precedenza SQL Data Warehouse) da un server eliminato

Questo articolo illustra come ripristinare un pool SQL dedicato (in precedenza SQL Data Warehouse) in Azure Synapse Analytics dopo l'eliminazione accidentale di un server con PowerShell.

Nota

Queste indicazioni sono solo per pool SQL dedicati autonomi (in precedenza SQL Data Warehouse). Per i pool SQL dedicati in un'area di lavoro di Azure Synapse Analytics, vedere Ripristinare il pool SQL dall'area di lavoro eliminata.

Operazioni preliminari

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Ripristinare il pool SQL dal server eliminato

  1. Aprire PowerShell.

  2. Connettersi all'account di Azure.

  3. Impostare il contesto sulla sottoscrizione contenente il server eliminato.

  4. Specificare il valore datetime approssimativo di eliminazione del server.

  5. Creare l'ID risorsa per il database da ripristinare dal server eliminato.

  6. Ripristinare il database dal server eliminato

  7. Verificare lo stato del database ripristinato come "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

Risoluzione dei problemi

Se si riceve il messaggio "Errore imprevisto durante l'elaborazione della richiesta", il database originale potrebbe non avere punti di ripristino disponibili a causa della breve durata del server originale. In genere, questo problema si verifica quando il server esiste per meno di un'ora.