Restaurar um conjunto de SQL dedicado existente (anteriormente SQL DW)

Neste artigo, irá aprender a restaurar um conjunto de SQL dedicado (anteriormente SQL DW) com o portal do Azure e o PowerShell.

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Consulte Instalar Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Verifique a capacidade da DTU. Cada conjunto é alojado por um servidor SQL lógico (por exemplo, myserver.database.windows.net) que tem uma quota de DTU predefinida. Verifique se o servidor tem quota de DTU suficiente para a base de dados que está a ser restaurada. Para saber como calcular a DTU necessária ou pedir mais DTU, veja Pedir uma alteração da quota de DTU.

Antes de começar

  1. Certifique-se de que instala Azure PowerShell.
  2. Tenha um ponto de restauro existente a partir do qual pretende restaurar. Se quiser criar um novo restauro, veja o tutorial para criar um novo ponto de restauro definido pelo utilizador.

Restaurar um conjunto de SQL dedicado existente (anteriormente SQL DW) através do PowerShell

Para restaurar um conjunto de SQL dedicado existente (anteriormente SQL DW) a partir de um ponto de restauro, utilize o cmdlet Do PowerShell Restore-AzSqlDatabase .

  1. Abra o PowerShell.

  2. Ligue-se à sua conta do Azure e liste todas as subscrições associadas à sua conta.

  3. Selecione a subscrição que contém a base de dados a restaurar.

  4. Liste os pontos de restauro do conjunto de SQL dedicado (anteriormente SQL DW).

  5. Escolha o ponto de restauro pretendido com RestorePointCreationDate.

  6. Restaure o conjunto de SQL dedicado (anteriormente SQL DW) para o ponto de restauro pretendido com o cmdlet Do PowerShell Restore-AzSqlDatabase .

    1. Para restaurar o conjunto de SQL dedicado (anteriormente SQL DW) para um servidor diferente, certifique-se de que especifica o outro nome de servidor. Este servidor também pode estar num grupo de recursos e região diferente.
    2. Para restaurar para uma subscrição diferente, veja a secção abaixo.
  7. Verifique se o conjunto de SQL dedicado restaurado (anteriormente SQL DW) está online.

  8. Após a conclusão do restauro, pode configurar o conjunto de SQL dedicado recuperado (anteriormente SQL DW) ao configurar a base de dados após a recuperação.


$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

Restaurar um conjunto de SQL dedicado existente (anteriormente SQL DW) através do portal do Azure

  1. Inicie sessão no Portal do Azure.

  2. Navegue para o conjunto de SQL dedicado a partir do qual pretende restaurar.

  3. Na parte superior da página Descrição geral, selecione Restaurar.

     Descrição Geral do Restauro

  4. Selecione Pontos de Restauro Automáticos ou Pontos de Restauro Definidos pelo Utilizador. Se o conjunto de SQL dedicado (anteriormente SQL DW) não tiver pontos de restauro automáticos, aguarde algumas horas ou crie um ponto de restauro definido pelo utilizador antes de restaurar. Para User-Defined Pontos de Restauro, selecione um existente ou crie um novo. Para o Servidor, pode escolher um servidor num grupo de recursos e região diferente ou criar um novo. Depois de fornecer todos os parâmetros, selecione Rever + Restaurar.

    Pontos de Restauro Automático

Restaurar um conjunto de SQL dedicado existente (anteriormente SQL DW) numa subscrição diferente através do PowerShell

Esta é uma documentação de orientação semelhante para restaurar um conjunto de SQL dedicado existente, no entanto, as instruções abaixo mostram que o cmdlet do PowerShell Get-AzSqlDatabase deve ser executado na subscrição de origem, enquanto o cmdlet Do PowerShell Restore-AzSqlDatabase deve ser executado na subscrição de destino. Tenha em atenção que o utilizador que está a executar o restauro tem de ter as permissões adequadas nas subscrições de origem e de destino.

  1. Abra o PowerShell.

  2. Atualize o Módulo Az.Sql para 3.8.0 (ou superior) se estiver numa versão mais antiga com Update-Module. Caso contrário, causará falhas. Um comando do PowerShell para validar a versão está abaixo.

    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} }
    
  3. Ligue-se à sua conta do Azure e liste todas as subscrições associadas à sua conta.

  4. Selecione a subscrição que contém a base de dados a restaurar.

  5. Liste os pontos de restauro do conjunto de SQL dedicado (anteriormente SQL DW).

  6. Escolha o ponto de restauro pretendido com RestorePointCreationDate.

  7. Selecione a subscrição de destino na qual a base de dados deve ser restaurada.

  8. Restaure o conjunto de SQL dedicado (anteriormente SQL DW) para o ponto de restauro pretendido com o cmdlet Do PowerShell Restore-AzSqlDatabase .

  9. Verifique se o conjunto de SQL dedicado restaurado (anteriormente SQL DW) está online.

$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

Passos Seguintes