Quiero realizar una copia de seguridad nativa de mis bases de datos de SQL Server en Amazon Relational Database Service (Amazon RDS) y almacenar los archivos de copia de seguridad en Amazon Simple Storage Service (Amazon S3). También quiero restaurar las copias de seguridad en la misma instancia de base de datos de Amazon RDS o en una instancia diferente que ejecuta SQL Server.
Resolución
Antes de iniciar la copia de seguridad nativa, asegúrate de configurar la copia de seguridad y restauración nativas.
Nota: El bucket de Amazon S3 debe estar en la misma región de AWS que la instancia de base de datos de Amazon RDS.
Configuración de una copia de seguridad nativa de la base de datos de SQL Server
Sigue estos pasos:
- Abre la consola de Amazon RDS.
- En el panel de navegación, elige Grupos de opciones.
- Selecciona Crear grupo y, a continuación, introduce el nombre, la descripción, el motor y la versión del motor de tu servidor.
- Selecciona Crear.
- Selecciona el grupo de opciones y, a continuación, elige Agregar opción.
- En Nombre de la opción, elige SQLSERVER_BACKUP_RESTORE.
Nota: Se recomienda crear un nuevo rol de AWS Identity and Access Management (IAM) para que el rol tenga los permisos necesarios.
- En Destino de S3, selecciona tu bucket de S3.
- En Programar, elige Inmediatamente.
- Elige Agregar opción.
Asociación del grupo de opciones a la instancia de base de datos
Sigue estos pasos:
- En el panel de navegación, selecciona Bases de datos y, a continuación, selecciona la instancia de la que vas a hacer la copia de seguridad.
- Elige Modificar y, a continuación, Configuración adicional.
- En Opciones de base de datos, selecciona el grupo de opciones y, a continuación, elige Continuar.
- Revisa el resumen de las modificaciones.
Nota: No hay tiempo de inactividad porque no es necesario reiniciar la instancia para modificar este grupo de opciones.
- En Programación de modificaciones, elige Aplicar inmediatamente y, a continuación, Modificar instancia de base de datos.
- Espera a que el estado cambie de Modificando a Disponible.
Conexión a la instancia de base de datos mediante SSMS
Sigue estos pasos:
- Inicia sesión en Microsoft SQL Server Management Studio (SSMS) como db_owner o db_backupoperator.
- Selecciona Nueva consulta y, a continuación, inicia la copia de seguridad de la base de datos.
- Introduce una de las siguientes instrucciones de SQL.
Para iniciar la copia de seguridad de bases de datos no cifradas, ejecuta la siguiente instrucción:
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;
Para iniciar la copia de seguridad de bases de datos cifradas, ejecuta la siguiente instrucción:
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: En las instrucciones anteriores, sustituye database_name, bucket_name, file_name_and_extension, region, account-id y key-id por tus valores. Para restaurar la base de datos de usuario en una instancia nueva de base de datos de Amazon RDS, utiliza el archivo de copia de seguridad generado en el bucket de S3. Al llamar al procedimiento rds_backup_database o rds_restore_database, la tarea produce la información sobre la tarea.
La tarea está completa cuando el estado del ciclo de vida de la tarea muestra CORRECTO. Utiliza la consola de Amazon S3 para ver el archivo de copia de seguridad en el bucket donde creaste la copia de seguridad de la base de datos del usuario. Para restaurar la instancia de base de datos, descarga el archivo de copia de seguridad que se encuentra en el bucket de S3 o utiliza el archivo de copia de seguridad de la base de datos del usuario. Puedes restaurar en la misma instancia de base de datos de Amazon RDS para SQL Server o en una nueva instancia de base de datos de RDS. También puedes 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, consulta Inicio rápido: copia de seguridad y restauración de una base de datos de SQL Server con SSMS en el sitio web de Microsoft.
Para la restauración desde el archivo de copia de seguridad que está en el bucket de S3, utiliza una de las siguientes instrucciones de SQL.
Para restaurar bases de datos no cifradas, ejecuta la siguiente instrucción:
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';
Para restaurar bases de datos cifradas, ejecuta la siguiente instrucción:
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';
Nota: En las instrucciones anteriores, sustituye database_name, bucket_name, file_name_and_extension, region, account-id y key-id por tus valores.
Para realizar un seguimiento del progreso de la instrucción de copia de seguridad o restauración, puedes obtener el ID de la tarea en la salida. O bien, puedes usar la siguiente instrucción para identificar todas las tareas finalizadas y pendientes de una base de datos específica:
exec msdb.dbo.rds\_task\_status @db\_name='database\_name';
Nota: Sustituye database_name por el nombre de tu base de datos.
Para realizar un seguimiento del estado del trabajo, utiliza la siguiente instrucción de SQL:
exec msdb.dbo.rds\_task\_status @task\_id=5;
Para obtener información sobre los errores que puedes encontrar y sus soluciones, consulta Migrating Microsoft SQL Server enterprise workloads to Amazon RDS (Migración de cargas de trabajo de Microsoft SQL Server Enterprise a 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