Como restaurar um backup do SQL Server (.bak) no amazon rds

Fala galera, a dica desse post é de como restaurar um backup do SQL Server (.bak) no Amazon RDS… Onde iremos pegar um backup do SQL Server, colocar esse backup no Amazon S3 e do S3, restaurar no Amazon RDS.

Pequeno esboço da arquitetura do que iremos realizar aqui…

Vamos lá ao passo a passo:

Passo 1 – Deve ser criado uma instancia do SQL Server no Amazon RDS (Relational Database Service).


Passo 2 – O backup do banco de dados do SQL Server (.bak), deve estar em um Bucket do S3. (Observação: Bucket na mesma região da Instancia do RDS)


Passo 3 – No Amazon RDS, escolha a instancia do SQL Server criada, sugerida no Passo 1

Escolha a opção: Option groups

Clique no Botão: Create Group

Informe um Name, uma Description, a Engine (no meu caso, a instancia criada no inicio, foi um SQL Server Express) e Major Engine Version, no meu caso foi o 14 (que é o SQL Server 2017).

Após criado o grupo (conforme imagem acima), vamos selecionar Ele [X] e clicar em Add option

Agora, escolheremos a opção: SQLSERVER_BACKUP_RESTORE em Option name, em IAM Role, escolha a opção: Create a new role e atribua um nome a essa role (no caso coloquei: og-sqlserverbkp-iam)

Ainda na mesma tela, devemos escolher o local que se encontra nosso arquivo de backup (Passo 2)

Encryption, pode deixar desmarcado e em Scheduling, marque immediately.

Resumindo o Passo 3:

E é só clicar em Add option.


Passo 4 – Agora voltaremos lá na nossa Instancia RDS do SQL Server, clique nela e depois em Modify

Vá em Database options e em Option group, altere para o Option group que criamos.

Vá até o final e clique em Continue.

Na próxima tela, mude para executar Imediatamente e clique em Modify DB Instance

Irá executar, deve demorar um pouco…


Passo 5 – Acessando o SQL Server e Restaurando!

Após concluído o passo acima…
Agora no seu console de acesso ao SGBD (SSMS, DBeaver), digite o seguinte comando, no caso, para o teste que estamos fazendo são os seguintes:

exec msdb.dbo.rds_restore_database
@restore_db_name='adventureworks',
@s3_arn_to_restore_from='arn:aws:s3:::sqlserver-backups-zouza/AdventureWorksLT2017.bak

Monitorando o andamento do backup…

exec msdb..rds_task_status


Pronto!
Banco de Dados criado e restaurado do backup!!!


Valeu galera!
Espero ter ajudado de alguma forma e vamos que vamos!


Abraço!
Alex Souza

Deixe um comentário