Een bestaande toegewezen SQL-pool herstellen (voorheen SQL DW)
In dit artikel leert u hoe u een bestaande toegewezen SQL-pool (voorheen SQL DW) herstelt met behulp van Azure Portal en PowerShell.
Notitie
Deze richtlijnen zijn alleen bedoeld voor zelfstandige toegewezen SQL-pools (voorheen SQL DW). Zie Een bestaande toegewezen SQL-pool herstellen voor toegewezen SQL-pools in een Azure Synapse Analytics-werkruimte.
Voordat u begint
Controleer uw DTU-capaciteit. Elke pool wordt gehost door een logische SQL-server (bijvoorbeeld
myserver.database.windows.net
) met een standaard DTU-quotum. Controleer of de server voldoende DTU-quotum heeft om de database te herstellen. Zie Een DTU-quotumwijziging aanvragen voor meer informatie over het berekenen van de benodigde DTU of om meer DTU's aan te vragen.Zorg ervoor dat u Azure PowerShell installeert.
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Een bestaand herstelpunt hebben waaruit u wilt herstellen. Als u een nieuwe herstelbewerking wilt maken, raadpleegt u de zelfstudie voor het maken van een nieuw door de gebruiker gedefinieerd herstelpunt.
Herstel een bestaande toegewezen SQL-pool (voorheen SQL DW) via PowerShell
Als u een bestaande toegewezen SQL-pool (voorheen SQL DW) vanaf een herstelpunt wilt herstellen, gebruikt u de Cmdlet Restore-AzSqlDatabase PowerShell.
Open PowerShell.
Verbinding maken naar uw Azure-account en vermeld alle abonnementen die aan uw account zijn gekoppeld.
Selecteer het abonnement dat de database bevat die u wilt herstellen.
Vermeld de herstelpunten voor de toegewezen SQL-pool (voorheen SQL DW).
Kies het gewenste herstelpunt met de RestorePointCreationDate.
Herstel de toegewezen SQL-pool (voorheen SQL DW) naar het gewenste herstelpunt met behulp van de Cmdlet Restore-AzSqlDatabase PowerShell.
- Als u de toegewezen SQL-pool (voorheen SQL DW) wilt herstellen naar een andere server, moet u de andere servernaam opgeven. Deze server kan zich ook in een andere resourcegroep en regio bevinden.
- Als u wilt herstellen naar een ander abonnement, raadpleegt u de onderstaande sectie.
Controleer of de herstelde toegewezen SQL-pool (voorheen SQL DW) online is.
Nadat het herstellen is voltooid, kunt u de herstelde toegewezen SQL-pool (voorheen SQL DW) configureren door de database na herstel te configureren.
$SubscriptionName="<YourSubscriptionName>" $ResourceGroupName="<YourResourceGroupName>" $ServerName="<YourServerNameWithoutURLSuffixSeeNote>" # Without database.windows.net #$TargetResourceGroupName="<YourTargetResourceGroupName>" # uncomment to restore to a different server. #$TargetServerName="<YourtargetServerNameWithoutURLSuffixSeeNote>" $DatabaseName="<YourDatabaseName>" $NewDatabaseName="<YourDatabaseName>" Connect-AzAccount Get-AzSubscription Select-AzSubscription -SubscriptionName $SubscriptionName # Or list all restore points Get-AzSqlDatabaseRestorePoint -ResourceGroupName $ResourceGroupName -ServerName $ServerName -DatabaseName $DatabaseName # Get the specific database to restore $Database = Get-AzSqlDatabase -ResourceGroupName $ResourceGroupName -ServerName $ServerName -DatabaseName $DatabaseName # Pick desired restore point using RestorePointCreationDate "xx/xx/xxxx xx:xx:xx xx" $PointInTime="<RestorePointCreationDate>" # Restore database from a restore point $RestoredDatabase = Restore-AzSqlDatabase –FromPointInTimeBackup –PointInTime $PointInTime -ResourceGroupName $Database.ResourceGroupName -ServerName $Database.ServerName -TargetDatabaseName $NewDatabaseName –ResourceId $Database.ResourceID # Use the following command to restore to a different server #$TargetResourceGroupName = $Database.ResourceGroupName # for restoring to different server in same resourcegroup #$RestoredDatabase = Restore-AzSqlDatabase –FromPointInTimeBackup –PointInTime $PointInTime -ResourceGroupName $TargetResourceGroupName -ServerName $TargetServerName -TargetDatabaseName $NewDatabaseName –ResourceId $Database.ResourceID # Verify the status of restored database $RestoredDatabase.status
Herstel een bestaande toegewezen SQL-pool (voorheen SQL DW) via Azure Portal
Meld u aan bij het Azure-portaal.
Navigeer naar de toegewezen SQL-pool waaruit u wilt herstellen.
Selecteer bovenaan de pagina Overzicht de optie Herstellen.
Selecteer Automatische herstelpunten of door de gebruiker gedefinieerde herstelpunten. Als de toegewezen SQL-pool (voorheen SQL DW) geen automatische herstelpunten heeft, wacht u enkele uren of maakt u een door de gebruiker gedefinieerd herstelpunt voordat u herstelt. Voor door de gebruiker gedefinieerde herstelpunten selecteert u een bestaande of maakt u een nieuwe. Voor Server kunt u een server kiezen in een andere resourcegroep en regio of een nieuwe maken. Nadat u alle parameters hebt opgegeven, selecteert u Controleren en herstellen.
Een bestaande toegewezen SQL-pool (voorheen SQL DW) herstellen naar een ander abonnement via PowerShell
Dit is vergelijkbaar met de richtlijnen voor het herstellen van een bestaande toegewezen SQL-pool, maar in de onderstaande instructies ziet u dat de PowerShell-cmdlet Get-AzSqlDatabase PowerShell moet worden uitgevoerd in het oorspronkelijke abonnement, terwijl de Cmdlet Restore-AzSqlDatabase PowerShell moet worden uitgevoerd in het doelabonnement. De gebruiker die de herstelbewerking uitvoert, moet over de juiste machtigingen beschikken in zowel de bron- als doelabonnementen.
Open PowerShell.
Werk Az.Sql-module bij naar 3.8.0 (of hoger) als u een oudere versie gebruikt
Update-Module
. Anders veroorzaakt dit fouten. De versie valideren met PowerShell:foreach ($i in (get-module -ListAvailable | ?{$_.name -eq 'az.sql'}).Version) { $version = [string]$i.Major + "." + [string]$i.Minor; if ($version -gt 3.7) {write-host "Az.Sql version $version installed. Prequisite met."} else {update-module az.sql} }
Verbinding maken naar uw Azure-account en vermeld alle abonnementen die aan uw account zijn gekoppeld.
Selecteer het abonnement dat de database bevat die u wilt herstellen.
Vermeld de herstelpunten voor de toegewezen SQL-pool (voorheen SQL DW).
Kies het gewenste herstelpunt met de RestorePointCreationDate.
Selecteer het doelabonnement waarin de database moet worden hersteld.
Herstel de toegewezen SQL-pool (voorheen SQL DW) naar het gewenste herstelpunt met behulp van de Cmdlet Restore-AzSqlDatabase PowerShell.
Controleer of de herstelde toegewezen SQL-pool (voorheen SQL DW) online is.
$SourceSubscriptionName="<YourSubscriptionName>" $SourceResourceGroupName="<YourResourceGroupName>" $SourceServerName="<YourServerNameWithoutURLSuffixSeeNote>" # Without database.windows.net $SourceDatabaseName="<YourDatabaseName>" $TargetSubscriptionName="<YourTargetSubscriptionName>" $TargetResourceGroupName="<YourTargetResourceGroupName>" $TargetServerName="<YourTargetServerNameWithoutURLSuffixSeeNote>" # Without database.windows.net $TargetDatabaseName="<YourDatabaseName>" # Update Az.Sql module to the latest version (3.8.0 or above) # Update-Module -Name Az.Sql -RequiredVersion 3.8.0 Connect-AzAccount Get-AzSubscription Select-AzSubscription -SubscriptionName $SourceSubscriptionName # Pick desired restore point using RestorePointCreationDate "xx/xx/xxxx xx:xx:xx xx" $PointInTime="<RestorePointCreationDate>" # Or list all restore points Get-AzSqlDatabaseRestorePoint -ResourceGroupName $SourceResourceGroupName -ServerName $SourceServerName -DatabaseName $SourceDatabaseName # Get the specific database to restore $Database = Get-AzSqlDatabase -ResourceGroupName $SourceResourceGroupName -ServerName $SourceServerName -DatabaseName $SourceDatabaseName # Switch context to the destination subscription Select-AzSubscription -SubscriptionName $TargetSubscriptionName # Restore database from a desired restore point of the source database to the target server in the desired subscription $RestoredDatabase = Restore-AzSqlDatabase –FromPointInTimeBackup –PointInTime $PointInTime -ResourceGroupName $TargetResourceGroupName -ServerName $TargetServerName -TargetDatabaseName $TargetDatabaseName –ResourceId $Database.ResourceID # Verify the status of restored database $RestoredDatabase.status