Restaurar bancos de dados habilitados para Stretch (Stretch Database)
Aplica-se a: SQL Server 2016 (13.x) e versões posteriores – Somente Windows
Importante
O banco de dados de ampliação foi preterido no SQL Server 2022 (16.x) e no Banco de Dados SQL do Azure. Esse recurso será removido em uma versão futura do mecanismo de banco de dados. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.
Restaure um banco de dados de backup, quando necessário, para se recuperar de muitos tipos de falhas, erros e desastres.
Para obter mais informações sobre backup, veja Fazer backup de bancos de dados habilitados para Stretch.
O backup é apenas uma parte de uma solução completa de continuidade dos negócios e de alta disponibilidade. Para obter mais informações sobre a alta disponibilidade, consulte Soluções de alta disponibilidade.
Restaurar os dados do SQL Server
Para se recuperar de falhas de hardware ou de corrupção, restaure o banco de dados SQL Server habilitado para Stretch por meio de um backup. Você pode continuar a usar os métodos de restauração do SQL Server que você utiliza atualmente. Para obter mais informações, veja Visão geral da recuperação e restauração.
Depois de restaurar o banco de dados SQL Server, você precisa executar o procedimento armazenado sys.sp_rda_reauthorize_db
para restabelecer a conexão entre o banco de dados SQL Server habilitado para Stretch e o banco de dados remoto do Azure. Para obter mais informações, veja Restaurar a conexão entre o banco de dados SQL Server e o banco de dados remoto do Azure.
Restaurar os dados remotos do Azure
Recuperar um banco de dados dinâmico do Azure
O serviço SQL Server Stretch Database no Azure tira instantâneos de todos os dados dinâmicos com uma frequência mínima de intervalos de 8 horas usando os Instantâneos do Armazenamento do Azure. Esses instantâneos são mantidos por 7 dias. Isso permite que você restaure os dados em, no mínimo, um dos 21 pontos específicos dos últimos sete dias até a hora em que o último instantâneo foi tirado.
Para restaurar um banco de dados dinâmico do Azure em um ponto específico anterior por meio do portal do Azure, siga o procedimento a seguir.
- Entre no portal do Azure.
- No lado esquerdo da tela, selecione Procurar e Bancos de Dados SQL.
- Navegue até o banco de dados e selecione-o.
- Na parte superior do painel de banco de dados, selecione Restaurar.
- Especifique um novo Nome de banco de dados, selecione um Ponto de restauração e selecione Criar.
- O processo de restauração de banco de dados será iniciado e poderá ser monitorado usando Notificações.
Recuperar um banco de dados excluído do Azure
O serviço SQL Server Stretch Database no Azure tira um instantâneo do banco de dados antes que um banco de dados seja removido e o retém por sete dias. Depois disso, ele não retém mais instantâneos do banco de dados dinâmico. Isso permite restaurar um banco de dados excluído no ponto em que ele foi excluído.
Para restaurar um banco de dados do Azure excluído para o ponto no tempo em que ele foi excluído por meio do portal do Azure, realize as ações descritas a seguir.
- Entre no portal do Azure.
- No lado esquerdo da tela, selecione Procurar e SQL Servers.
- Navegue até o servidor e selecione-o.
- Role para baixo até Operações no painel do servidor e selecione o bloco Bancos de Dados Excluídos.
- Selecione o banco de dados excluído que você deseja restaurar.
- Especifique um novo Nome de banco de dados e selecione Criar.
- O processo de restauração de banco de dados será iniciado e poderá ser monitorado usando Notificações.
Restaurar a conexão entre o banco de dados SQL Server e o banco de dados remoto do Azure
Se você pretende se conectar com um banco de dados do Azure restaurado com um nome diferente ou em uma região diferente, execute o procedimento armazenado sys.sp_rda_deauthorize_db para se desconectar do banco de dados do Azure anterior.
Execute o procedimento armazenado sys.sp_rda_reauthorize_db para reconectar o banco de dados local habilitado para Stretch ao banco de dados do Azure.
Forneça as credenciais no escopo do banco de dados existente como um valor sysname ou varchar(128). (Não use varchar(max).) É possível procurar o nome da credencial na exibição
sys.database_scoped_credentials
.Especifique se deseja fazer uma cópia dos dados remotos e conectar-se à cópia (recomendado).
USE <Stretch-enabled database name>; GO EXEC sp_rda_reauthorize_db @credential = N'<existing_database_scoped_credential_name>', @with_copy = 1; GO