¿Cómo puedo hacer copias de seguridad nativas de una instancia de base de datos de Amazon RDS que ejecuta SQL Server?

5 minutos de lectura
0

Quiero aprender a realizar copias de seguridad nativas de mis bases de datos de SQL Server en Amazon RDS y a almacenar los archivos de copia de seguridad en Amazon S3. Quiero descubrir cómo restaurar estas copias de seguridad en la misma instancia de base de datos de RDS o en otra instancia diferente que ejecute SQL Server.

Breve descripción

Con las copias de seguridad de Amazon RDS puede almacenar el archivo de copia de seguridad en Amazon Simple Storage Service (Amazon S3). También puede usar el archivo de copia de seguridad de la base de datos para restauraciones en la misma instancia de base de datos de Amazon RDS para SQL Server o en otra diferente.

Amazon RDS admite copias de seguridad nativas y restauraciones en el caso de las bases de datos de Microsoft SQL Server. Puede crear una copia de seguridad completa de la base de datos local y almacenar el archivo en Amazon S3. Luego puede restaurar el archivo de copia de seguridad en una instancia de base de datos de Amazon RDS existente que ejecute SQL Server. También puede restaurar este archivo de copia de seguridad en un servidor local o en otra instancia de base de datos de Amazon RDS que ejecute SQL Server. Para obtener más información, consulte Restaurar una copia de seguridad en el sitio web de Microsoft.

Solución

Antes de iniciar la copia de seguridad nativa, asegúrese de que dispone de los siguientes componentes:

Para configurar una copia de seguridad nativa de la base de datos de SQL Server, siga estos pasos:

  1. Abra la consola de Amazon RDS y, a continuación, seleccione Grupos de opciones en el panel de navegación.
  2. Seleccione Crear grupo e introduzca el nombre, la descripción, el motor y la versión del motor de su servidor.
  3. Elija Crear.
  4. Seleccione el grupo de opciones que creó y, a continuación, elija Agregar opción.
  5. Seleccione SQLSERVER_BACKUP_RESTORE. Se recomienda crear un nuevo rol de IAM y, a continuación, seleccionar Agregar opción para que su rol de IAM tenga los privilegios necesarios.
  6. Elija su bucket de S3 o cree un bucket de S3 nuevo.
  7. Seleccione Aplicar inmediatamente y Agregar opción.
  8. Para asociar el grupo de opciones a la instancia de base de datos, seleccione Bases de datos en el panel de navegación y, a continuación, elija la instancia de la que desea hacer la copia de seguridad.
  9. Seleccione Acciones y, a continuación, elija Modificar.
  10. En Opciones de base de datos, seleccione el grupo de opciones que ha creado y, a continuación, elija Aplicar inmediatamente y Continuar.
  11. Revise la información y, a continuación, seleccione Modificar la instancia de base de datos. Esta modificación del grupo de opciones no tiene tiempo de inactividad porque no hace falta reiniciar la instancia.
  12. Espere a que el estado cambie de Modificando a Disponible. A continuación, para conectarse a la instancia de base de datos a través de SQL Server Management Studio, utilice el usuario principal de la instancia de RDS.
  13. Seleccione Nueva consulta y, a continuación, para iniciar la copia de seguridad de la base de datos deseada, introduzca una de las siguientes instrucciones SQL:

Inicio de una copia de seguridad para bases de datos no cifradas

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;

Inicio de una copia de seguridad para bases de datos cifradas

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;

Nota: Sustituya database_name, bucket_name, file_name_and_extension, region, account-id y key-id, indicados en estos ejemplos, por valores adecuados en su caso. Para restaurar la base de datos en otra instancia nueva de base de datos de RDS, utilice el archivo de copia de seguridad generado en el bucket de S3. Cuando se llama el procedimiento rds_backup_database o rds_restore_database almacenado, la tarea empieza y muestra la información sobre la tarea.

Cuando el estado del ciclo de vida de la tarea es CORRECTO, la tarea está completa. A continuación, puede abrir la consola de Amazon S3, elegir el bucket en el que creó la copia de seguridad de la base de datos del usuario y ver el archivo de la copia de seguridad. Para restaurar la instancia de base de datos, descargue este archivo o utilice el archivo de copia de seguridad de la base de datos del usuario. Puede restaurar la misma instancia de base de datos de Amazon RDS para SQL Server o utilizar otra instancia de base de datos de RDS nueva.

Para la restauración desde el archivo de copia de seguridad disponible en el bucket de S3, utilice una de las siguientes instrucciones de SQL:

Restauración de bases de datos no cifradas

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';

Restauración de bases de datos cifradas

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';

Puede obtener el identificador de la tarea después de llevar a cabo la instrucción de copia de seguridad o restauración. O bien, puede usar el siguiente script para identificar todas las tareas finalizadas y pendientes de una base de datos en particular:

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

Para realizar un seguimiento del estado del trabajo, utilice esta instrucción SQL:

exec msdb..rds_task_status @task_id= 5

Para obtener una lista de posibles errores y soluciones, consulte Migrating Microsoft SQL Server Enterprise workloads to Amazon RDS.

Información relacionada

Introducción a las copias de seguridad

Copia de seguridad, restauración y exportación de datos

Importación y exportación de bases de datos de SQL Server por copias de seguridad y restauración nativas