Ao usar o AWS re:Post, você concorda com os AWS re:Post Termos de uso

Como fazer backups nativos de uma instância de banco de dados Amazon RDS que executa o SQL Server?

5 minuto de leitura
0

Quero aprender a realizar backups nativos dos meus bancos de dados do SQL Server no Amazon RDS e armazenar os arquivos de backup no Amazon S3. Quero descobrir como restaurar esses backups na mesma instância de banco de dados do RDS ou em uma instância diferente executando o SQL Server.

Breve descrição

Com os backups do Amazon RDS, você pode armazenar o arquivo de backup no Amazon Simple Storage Service (Amazon S3). Você também pode usar o arquivo de backup do banco de dados para restaurar na mesma instância de banco de dados do Amazon RDS para SQL Server ou em outra.

O Amazon RDS oferece suporte de backup e restauração nativos para bancos de dados do Microsoft SQL Server. Você pode criar um backup completo do seu banco de dados local e armazenar o arquivo no Amazon S3. Em seguida, pode restaurar o arquivo de backup em uma instância de banco de dados do Amazon RDS existente que executa o SQL Server. Você também pode restaurar esse arquivo de backup em um servidor local ou em uma instância de banco de dados do Amazon RDS diferente que executa o SQL Server. Para obter mais informações, consulte Restore a backup no site da Microsoft.

Resolução

Antes de começar o backup nativo, verifique se você tem os seguintes componentes:

Para configurar um backup nativo do banco de dados do SQL Server, siga estas etapas:

  1. Abra o console do Amazon RDS e escolha Grupos de opções no painel de navegação.
  2. Escolha Criar grupo e insira o nome, a descrição, o mecanismo e a versão do mecanismo do seu servidor.
  3. Escolha Criar.
  4. Selecione o grupo de opções que você criou e escolha Adicionar opção.
  5. Escolha SQLSERVER\ _BACKUP\ _RESTORE. É uma prática recomendada criar uma nova função do IAM e, em seguida, escolher Adicionar opção para que sua função do IAM tenha os privilégios necessários.
  6. Escolha seu bucket do S3 ou crie um novo bucket do S3.
  7. Escolha Aplicar imediatamente e Adicionar opção.
  8. Para associar o grupo de opções à instância de banco de dados, escolha Bancos de dados no painel de navegação e, em seguida, escolha a instância da qual fazer backup.
  9. Escolha Ações e, em seguida, Modificar.
  10. Em Opções de banco de dados, escolha o grupo de opções que você criou e, em seguida, escolha Aplicar imediatamente e Continuar.
  11. Analise as informações e escolha Modificar instância de banco de dados. Essa modificação do grupo de opções não tem tempo de inatividade, pois a reinicialização da instância não é necessária.
  12. Aguarde até que o status mude de modificado para disponível. Em seguida, para se conectar à instância de banco de dados por meio do SQL Server Management Studio, use o usuário principal da sua instância do RDS.
  13. Escolha Nova consulta e, em seguida, para iniciar o backup do banco de dados desejado, insira uma das seguintes instruções SQL:

Inicie o backup de bancos de dados não criptografados

exec msdb.dbo.rds_backup_database @source_db_name='database_name', @s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name_and_extension',
@overwrite_S3_backup_file=1;

Iniciar backup para bancos de dados criptografados

exec msdb.dbo.rds_backup_database @source_db_name='database_name',
@s3_arn_to_backup_to='arn:aws:s3:::bucket_name/file_name_and_extension',  
@kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id',
@overwrite_S3_backup_file=1;

Observação: substitua database\ _name, bucket\ _name, file\ _name\ _and\ _extension, region, account-id e key-id listados nesses exemplos para corresponder ao seu cenário. Para restaurar o banco de dados do usuário em uma nova instância de banco de dados do RDS, use o arquivo de backup que foi gerado no bucket do S3. Quando o procedimento rds\ _backup\ _database ou **rds\ _restore\ _database ** armazenado é chamado, a tarefa é iniciada e gera as informações sobre a tarefa.

Quando o status do ciclo de vida da tarefa é SUCESSO, a tarefa está concluída. Em seguida, você pode abrir o console do Amazon S3, escolher o bucket em que criou o backup do banco de dados do usuário e depois visualizar o arquivo de backup. Para restaurar a instância de banco de dados, baixe esse arquivo ou use o arquivo de backup do banco de dados do usuário. Você pode restaurar a mesma instância de banco de dados do Amazon RDS para SQL Server ou em uma nova instância de banco de dados do RDS.

Para restaurar a partir do arquivo de backup disponível no bucket do S3, use uma das seguintes instruções SQL:

Restaurar bancos de dados não criptografados

exec msdb.dbo.rds_restore_database @restore_db_name='database_name',
@s3_arn_to_restore_from='arn:aws:s3:::bucket_name/file_name_and_extension';

Restaurar bancos de dados criptografados

exec msdb.dbo.rds_restore_database @restore_db_name='database_name',
@s3_arn_to_restore_from='arn:aws:s3::: bucket_name/file_name_and_extension',
@kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id';

Você pode obter a ID da tarefa depois de executar a instrução de backup ou restauração. Ou você pode usar o script a seguir para identificar todas as tarefas concluídas e pendentes de um banco de dados específico:

exec msdb.dbo.rds_task_status @db_name='database_name'

Para rastrear o status do trabalho, use esta instrução SQL:

exec msdb..rds_task_status @task_id= 5

Para obter uma lista de possíveis erros e soluções, consulte Migrating Microsoft SQL Server Enterprise workloads to Amazon RDS.

Informações relacionadas

Introdução aos backups

Fazer backup, restaurar e exportar dados

Importar e exportar bancos de dados do SQL Server usando backup e restauração nativos