Exercício – recuperar dados ao restaurar uma base de dados SQL do Azure
Os restauros de teste são um componente essencial de qualquer estratégia de recuperação após desastre.
O objetivo é familiarizar-se com os passos para restaurar uma base de dados em cópia de segurança para um ponto específico no tempo, caso seja necessário. Você também deseja investigar quanto tempo leva uma operação de restauração. Dessa forma, você pode se planejar para esse momento em sua orientação para sua organização.
Vamos executar uma restauração a partir de backups automatizados do Banco de Dados SQL do Azure.
Confirmar que as cópias de segurança estão ativas
Podem ser necessários até 15 minutos para que a primeira cópia de segurança bem-sucedida seja concluída. Temos de garantir que as cópias de segurança estão em execução antes de continuarmos o exercício.
No Azure Cloud Shell, execute o seguinte comando do PowerShell para definir uma variável para o valor da sua instância do SQL Server:
$sqlserver=Get-AzSqlServer
Valide se os backups contínuos estão em execução usando este comando:
Get-AzSqlDatabaseRestorePoint ` -ResourceGroupName <rgn>[sandbox resource group name]</rgn> ` -DatabaseName sql-erp-db ` -ServerName $sqlserver.ServerName
Você deve obter uma saída semelhante ao código a seguir se os backups estiverem em execução. Se o comando não devolver nenhum valor, significa que ainda não foi iniciada uma cópia de segurança. Volte a executar este comando dentro de uns minutos.
ResourceGroupName : <rgn>[sandbox resource group name]</rgn> ServerName : erpserver-53903 DatabaseName : sql-erp-db Location : East US RestorePointType : CONTINUOUS RestorePointCreationDate : EarliestRestoreDate : 9/24/19 4:21:21 PM RestorePointLabel :
O
RestorePointType
éCONTINUOUS
, o que indica que as cópias de segurança ocorrem automaticamente. OEarliestRestoreDate
indica a data/hora da primeira cópia de segurança. Com as cópias de segurança implementadas, vamos continuar o exercício.
Retirar uma tabela da base de dados
Comecemos por simular uma modificação de base de dados incorreta.
No menu do portal do Azure ou na página inicial, selecione Todos os recursos, selecione erpserver-NNNN, selecione bancos de dados SQL e selecione o banco de dados sql-erp-db.
Selecione Editor de consultas (visualização) e, em seguida, inicie sessão com o utilizador dbadmin e a palavra-passe que especificou para esta conta.
Vamos remover a tabela Pessoa que criámos anteriormente. Numa janela de nova consulta, execute este comando.
DROP TABLE Person
Para verificar as tabelas na base de dados, selecione Nova Consulta. Em seguida, na janela Consulta 2 , execute este comando para listar todas as tabelas no banco de dados:
SELECT schema_name(t.schema_id) as schema_name, t.name as table_name FROM sys.tables t ORDER BY schema_name, table_name;
Deverá ver Sem resultados, pois eliminámos a tabela Pessoa.
Executar um restauro para um ponto anterior no tempo
A tabela Pessoa foi eliminada por engano. Agora vamos restaurar a base de dados para o estado anterior.
No menu do portal do Azure ou a partir da Home page, selecione Todos os recursos e, em seguida, selecione a base de dados sql-erp-db.
Na parte superior da página Descrição geral, selecione Restaurar.
Preencha a guia Noções básicas na página Restaurar banco de dados com esses valores e selecione Revisar + criar.
Definição Value Selecionar origem Ponto no tempo Nome da base de dados sql-erp-db-xxxxx Ponto de restauro Selecione uma hora há 10 minutos, antes de ter removido a tabela Pessoa Servidor erpserver-xxxxx Quer utilizar o conjunto de bases de dados elásticas SQL? Não Computação + armazenamento Default value Redundância de armazenamento de cópias de segurança Armazenamento de backup com redundância local Selecione Criar. A restauração do banco de dados leva vários minutos para ser concluída.
Ver a base de dados restaurada
A base de dados restaurada deve conter a tabela Pessoa. Pode verificar isto no portal.
No menu do portal do Azure ou a partir da Home page, selecione Todos os recursos e, em seguida, selecione a base de dados sql-erp-db-restored.
Selecione Editor de consultas (visualização) e entre com o usuário dbadmin e a senha especificada para essa conta.
Para verificar as tabelas no banco de dados, na janela Consulta 1 , execute este comando:
SELECT schema_name(t.schema_id) as schema_name, t.name as table_name FROM sys.tables t ORDER BY schema_name, table_name;
A tabela Pessoa deverá agora estar presente.
Confirme se os dados estão na tabela executando este comando:
SELECT * FROM Person
Deverá ver os dados que introduziu anteriormente.
Agora você aprendeu como restaurar um banco de dados se algo não intencional acontecer com os dados. Também já conhece o processo de restauro. Agora você pode garantir à sua organização que definiu corretamente os procedimentos de backup e restauração.