En esta página, se describe cómo crear los archivos de copia de seguridad necesarios para migrar tus bases de datos de SQL Server autoadministradas o de Amazon RDS a Cloud SQL para SQL Server, incluidas las siguientes secciones:
- En Requisitos y limitaciones, se enumeran las limitaciones importantes para la compatibilidad con archivos de copia de seguridad.
- En Convenciones de nombres, se explican los requisitos relacionados con los nombres de los archivos de copia de seguridad.
- Realiza una copia de seguridad completa contiene los pasos para crear archivos de copia de seguridad completa.
- En Realiza una copia de seguridad diferencial, se incluyen los pasos para crear archivos de copia de seguridad diferencial.
- Archivos de copia de seguridad del registro de transacciones contiene los pasos para crear archivos de copia de seguridad del registro de transacciones.
Requisitos y limitaciones
Los siguientes requisitos y limitaciones se aplican a los archivos de copia de seguridad que usas para la migración:
Todos los archivos de copia de seguridad deben tener nombres que cumplan con sus respectivas convenciones de nombres.
Tus archivos de copia de seguridad pueden tener un tamaño máximo de 5 TB.
Puedes dividir tus archivos de copia de seguridad completa o diferencial en archivos más pequeños si el tamaño de tu base de datos supera los 5 TB. Cada división puede tener un tamaño máximo de 5 TB.
Puedes usar archivos de copia de seguridad y de registro de transacciones encriptados para la migración. Si quieres usar archivos de copia de seguridad encriptados, debes encriptar cada archivo de copia de seguridad (completo, diferencial, registro de transacciones) que uses para una base de datos específica incluida en tu migración. Consulta Cómo usar copias de seguridad encriptadas.
Database Migration Service no migra la base de datos
masterde SQL Server.Tu instancia de SQL Server de origen no puede usar el modelo de recuperación simple. Para obtener más información sobre los modelos de recuperación, consulta Modelos de recuperación (SQL Server) en la documentación de Microsoft.
Convenciones de nombres
En esta sección, se describen los requisitos de nombre de archivo para tus archivos de copia de seguridad completa, diferencial y de registro de transacciones.
Para obtener información sobre los requisitos de nombre y estructura de las carpetas de bucket de Cloud Storage, consulta Crea y configura buckets de Cloud Storage.
Para obtener información sobre cómo Database Migration Service usa diferentes tipos de archivos de copia de seguridad en migraciones homogéneas de SQL Server, consulta Tipos de archivos de copia de seguridad admitidos.
Convenciones de nombres de los archivos de copia de seguridad para las instancias de SQL Server locales
Nombres del archivo de la copia de seguridad completa
La convención de nombres para los archivos de copia de seguridad completa depende de si usas un solo archivo de copia de seguridad o si lo divides en varias secciones. En ambos casos, Database Migration Service requiere que incluyas una marca de tiempo de época (expresada como una marca de tiempo Unix en segundos) que represente el tiempo aproximado en el que hiciste la copia de seguridad completa.
Si tu copia de seguridad completa es un solo archivo, el nombre del archivo debe usar el formato
db_name.epoch.bak, en el que:db_namees el nombre de tu base de datos.epoches una marca de tiempo Unix en segundos..bakes la extensión de archivo.
Dentro de los ejemplos válidos se incluyen los siguientes:
my-business-database.1712649600.bakmy-other-database.1712649600.bak
Si divides tu copia de seguridad completa en bandas separadas, cada banda puede usar cualquier nombre que elijas, pero se deben subir a una carpeta de Cloud Storage cuyo nombre sea una marca de tiempo de Unix en segundos:
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- 1712649600/ | | | |- mystripe-full_backup_file.bak | | | |- otherStripefull-bkp.bak | |- diff/ | | |- ... | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- 1715250742/ | | | |- cool-stripe-file.bak | | | |- secondStripeFile.bak | |- diff/ | | |- ... | |- log/ | | |- ...
Nombres del archivo de copia de seguridad diferencial
La convención de nombres para los archivos de copia de seguridad diferencial depende de si usas un solo archivo de copia de seguridad o si lo divides en varias bandas. En ambos casos, Database Migration Service requiere que incluyas una marca de tiempo de época (expresada como una marca de tiempo Unix en segundos) que represente el tiempo aproximado en el que hiciste la copia de seguridad diferencial.
Si tu copia de seguridad diferencial es un solo archivo, el nombre del archivo debe usar el formato
db_name.epoch.ext, en el que:db_namees el nombre de tu base de datos.epoches una marca de tiempo Unix en segundos..extes la extensión de archivo. Los archivos de copia de seguridad diferencial pueden usar las siguientes extensiones:.bak,.dify.diff.
Dentro de los ejemplos válidos se incluyen los siguientes:
my-business-database.1731159833.bakmy-other-database.1731159833.dif
Si divides tu copia de seguridad diferencial en bandas separadas, cada banda puede usar cualquier nombre que elijas, pero se deben subir a una carpeta de Cloud Storage cuyo nombre sea una marca de tiempo de Unix en segundos:
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- mydiffstripe-diff_backup_file.dif | | | |- mySeconddiffstripe-diff_backup_file.bak | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- firstDiffStripe.bak | | | |- other_diff_stripe.diff | |- log/ | | |- ...
Nombres del archivo del registro de transacciones
Los nombres de tus archivos de registro de transacciones deben usar el formato db_name.epoch.trn,
en donde:
db_namees el nombre de tu base de datos.epoches una marca de tiempo Unix en segundos..trnes la extensión de archivo.
Dentro de los ejemplos válidos se incluyen los siguientes:
my-business-database.1712649600.trnmy-other-database.1712649600.trn
Convenciones de nombres de los archivos de copia de seguridad para Amazon RDS
Nombres del archivo de la copia de seguridad completa
La convención de nombres para los archivos de copia de seguridad completa depende de si usas un solo archivo de copia de seguridad o si lo divides en varias secciones. En ambos casos, Database Migration Service requiere que incluyas una marca de tiempo de época (expresada como una marca de tiempo Unix en segundos) que represente el tiempo aproximado en el que hiciste la copia de seguridad completa.
Si tu copia de seguridad completa es un solo archivo, el nombre del archivo debe usar el formato
db_id.family_guid.rds_backup_seq_id.epoch.bak, en el que:db_ides el identificador de base de datos interno de Amazon RDS.family_guides el identificador único de la base de datos original de Amazon RDS en la creación.rds_backup_seq_ides el identificador que Amazon RDS usa de forma interna para mantener un número de secuencia para cada archivo de copia de seguridad del registro de transacciones.epoches una marca de tiempo Unix en segundos..bakes la extensión de archivo.
Dentro de los ejemplos válidos se incluyen los siguientes:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1712649600.bak1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1712649600.bak
Si divides tu copia de seguridad completa en bandas separadas, cada banda puede usar cualquier nombre que elijas, pero se deben subir a una carpeta de Cloud Storage cuyo nombre sea una marca de tiempo de Unix en segundos:
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- 1712649600/ | | | |- mystripe-full_backup_file.bak | | | |- otherStripefull-bkp.bak | |- diff/ | | |- ... | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- 1715250742/ | | | |- cool-stripe-file.bak | | | |- secondStripeFile.bak | |- log/ | | |- ...
Nombres del archivo de copia de seguridad diferencial
La convención de nombres para los archivos de copia de seguridad diferencial depende de si usas un solo archivo de copia de seguridad o si lo divides en varias bandas. En ambos casos, Database Migration Service requiere que incluyas una marca de tiempo de época (expresada como una marca de tiempo Unix en segundos) que represente el tiempo aproximado en el que hiciste la copia de seguridad diferencial.
Si tu copia de seguridad diferencial es un solo archivo, el nombre del archivo debe usar el formato
db_id.family_guid.rds_backup_seq_id.epoch.ext, en el que:db_ides el identificador de base de datos interno de Amazon RDS.family_guides el identificador único de la base de datos original de Amazon RDS en la creación.rds_backup_seq_ides el identificador que Amazon RDS usa de forma interna para mantener un número de secuencia para cada archivo de copia de seguridad del registro de transacciones.epoches una marca de tiempo Unix en segundos..bakes la extensión de archivo. Los archivos de copia de seguridad diferencial pueden usar las siguientes extensiones:.bak,.dify.diff.
Dentro de los ejemplos válidos se incluyen los siguientes:
3.CX11CB3D-G2E4-46D9-B462-CE40CDA97E89.22.1731159833.bak1.FD21CD3F-B5E4-27Z9-B462-CE40CDA97E89.21.1731159833.dif
Si divides tu copia de seguridad completa en bandas separadas, cada banda puede usar cualquier nombre que elijas, pero se deben subir a una carpeta de Cloud Storage cuyo nombre sea una marca de tiempo de Unix en segundos:
Cloud Storage bucket root/ |- my-business-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- mydiffstripe-diff_backup_file.dif | | | |- mySeconddiffstripe-diff_backup_file.bak | |- log/ | | |- ... |- my-other-database/ | |- full/ | | |- ... | |- diff/ | | |- 1731159833/ | | | |- firstDiffStripe.bak | | | |- other_diff_stripe.diff | |- log/ | | |- ...
Nombres del archivo del registro de transacciones
En Amazon RDS, los archivos de copia de seguridad del registro de transacciones se generan
automáticamente y cuentan con todos los identificadores de base de datos necesarios.
Estos nombres predeterminados incluyen la marca de tiempo de época y se admiten en su totalidad
en Database Migration Service. Puedes subir estos archivos a tu carpeta /log/ de forma directa.
Realiza la copia de seguridad completa de tu instancia de origen
El archivo de copia de seguridad de la base de datos completa es necesario para la fase de carga inicial de tu trabajo de migración. Si deseas encriptar tus copias de seguridad, asegúrate de almacenar la clave de encriptación para que puedas subirla a Cloud Storage más adelante cuando crees el trabajo de migración. Consulta Cómo usar copias de seguridad encriptadas.
Realiza una copia de seguridad completa de las instancias de SQL Server locales
Puedes realizar la copia de seguridad completa de tu instancia de SQL Server local con T-SQL o SQL Server Management Studio (SSMS). Lleva a cabo los pasos siguientes:
- Asegúrate de cumplir con los siguientes requisitos:
- Usas los requisitos de asignación de nombres correctos para tus archivos de copia de seguridad.
- Tus bases de datos de origen no usan el modelo de recuperación simple. Consulta Modelos de recuperación (SQL Server) en la documentación de Microsoft.
- Si el tamaño de tu base de datos supera los 5 TB, asegúrate de dividir la copia de seguridad completa en secciones separadas. Cada división puede tener un tamaño máximo de 5 TB. Consulta Crea copias de seguridad de dispositivos en un conjunto de medios con selecciones.
- Realiza la copia de seguridad completa de tu instancia de origen. Consulta
Guía de inicio rápido: Crea una copia de seguridad y restablece una base de datos de SQL Server con SSMS
en la documentación de Microsoft. También puedes consultar los siguientes comandos de ejemplo:
Ejemplo de comando de T-SQL para un solo archivo de copia de seguridad completa
Este comando de ejemplo realiza una copia de seguridad completa de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''''; EXEC sp_executesql @SQL; GO
Ejemplo de comando de T-SQL para archivos de copia de seguridad completa dividida
Este comando de ejemplo realiza una copia de seguridad completa de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath1 NVARCHAR(2000); DECLARE @BackupPath2 NVARCHAR(2000); DECLARE @BackupPath3 NVARCHAR(2000); SET @BackupPath1 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe1.bak'; SET @BackupPath2 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe2.bak'; SET @BackupPath3 = 'X:\SQLServerBackups\full\' + @DATABASE + '.' + @unixTimestamp + '\stripe3.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] ' + 'TO DISK = N''' + @BackupPath1 + ''', ' + 'DISK = N''' + @BackupPath2 + ''', ' + 'DISK = N''' + @BackupPath3 + ''' ' + 'WITH FORMAT, ' + 'MEDIANAME = N''AdventureWorksStripedSet0'', ' + 'MEDIADESCRIPTION = N''Striped media set for ' + @DATABASE + ' database'''; EXEC sp_executesql @SQL; GO
- Sube tu archivo de copia de seguridad a un bucket de Cloud Storage. Consulta Crea y configura un bucket de Cloud Storage.
Realiza una copia de seguridad completa para Amazon RDS
Para realizar la copia de seguridad completa de tu fuente de Amazon RDS, sigue estos pasos:
- Asegúrate de cumplir con los siguientes requisitos:
- Usas los requisitos de asignación de nombres correctos para tus archivos de copia de seguridad.
- Tus bases de datos de origen no usan el modelo de recuperación simple. Consulta Determina un modelo de recuperación para tu base de datos de Microsoft SQL Server en la documentación de Amazon RDS.
- Si deseas usar la copia de seguridad del registro de transacciones después de realizar la copia de seguridad completa, habilita las copias de seguridad automáticas en tu instancia de Amazon RDS.
- Configura la capacidad de copia de seguridad nativa. Consulta Configura la copia de seguridad y el restablecimiento nativos en la documentación de Amazon RDS.
- Realiza la copia de seguridad completa de tu instancia de origen. Si el tamaño de tu base de datos
supera los 5 TB, asegúrate de dividir la copia de seguridad completa en bandas separadas
con el parámetro
@number_of_files. Cada división puede tener un tamaño máximo de 5 TB. Consulta Cómo crear una copia de seguridad de una base de datos en la documentación de Amazon RDS.También puedes consultar el siguiente comando de ejemplo:
Ejemplo de consulta para realizar una copia de seguridad completa en Amazon RDS
Este comando de ejemplo realiza una copia de seguridad completa de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @unixTimestamp varchar(30); declare @fileName varchar(1000); SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @unixTimestamp=CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); SELECT @fileName = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/full/' + @DATABASE + '.' + @unixTimestamp + '/' + CAST(database_id AS VARCHAR(10)) + '.' + CAST(family_guid AS VARCHAR(50)) + '.*.' + @unixTimestamp) FROM master.sys.database_recovery_status WHERE DB_NAME(database_id)=@DATABASE; exec msdb.dbo.rds_backup_database @source_db_name=@DATABASE, @s3_arn_to_backup_to=@fileName, @overwrite_s3_backup_file=1, @type='FULL', @number_of_files=1;
- Sube tu archivo de copia de seguridad a un bucket de Cloud Storage. Consulta Crea y configura un bucket de Cloud Storage.
Crea la copia de seguridad diferencial de tu instancia de origen
Puedes usar un archivo de copia de seguridad diferencial de la base de datos durante la fase de carga incremental de tu trabajo de migración. Puedes usar archivos de copia de seguridad diferencial encriptados si también encriptas el archivo de copia de seguridad completa y los archivos de registro de transacciones para la misma base de datos. Todos los archivos de copia de seguridad y de registro de transacciones deben usar la misma clave de encriptación por base de datos. Consulta Cómo usar copias de seguridad encriptadas.
Realiza una copia de seguridad diferencial para las instancias de SQL Server locales
Puedes realizar la copia de seguridad diferencial de tu instancia de SQL Server local con T-SQL o SQL Server Management Studio (SSMS). Lleva a cabo los pasos siguientes:
- Asegúrate de cumplir con los siguientes requisitos:
- Usas los requisitos de asignación de nombres correctos para tus archivos de copia de seguridad.
- Tus bases de datos de origen no usan el modelo de recuperación simple. Consulta Modelos de recuperación (SQL Server) en la documentación de Microsoft.
- Si el tamaño de tu base de datos supera los 5 TB, asegúrate de dividir la copia de seguridad diferencial en secciones separadas. Cada división puede tener un tamaño máximo de 5 TB. Consulta Crea copias de seguridad de dispositivos en un conjunto de medios con selecciones.
- Realiza la copia de seguridad diferencial de tu instancia de origen. Consulta
Crea una copia de seguridad de una base de datos diferencial
en la documentación de Microsoft. También puedes consultar los siguientes comandos de ejemplo:
Ejemplo de comando de T-SQL para un solo archivo de copia de seguridad diferencial
Este comando de ejemplo realiza una copia de seguridad diferencial de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''' WITH DIFFERENTIAL'; EXEC sp_executesql @SQL; GO
Ejemplo de comando de T-SQL para archivos de copia de seguridad diferencial divididos
Este comando de ejemplo realiza una copia de seguridad diferencial de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath1 NVARCHAR(2000); DECLARE @BackupPath2 NVARCHAR(2000); DECLARE @BackupPath3 NVARCHAR(2000); SET @BackupPath1 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe1.bak'; SET @BackupPath2 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe2.bak'; SET @BackupPath3 = 'X:\SQLServerBackups\diff\' + @DATABASE + '.' + @unixTimestamp + '\stripe3.bak'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP DATABASE [' + @DATABASE + '] ' + 'TO DISK = N''' + @BackupPath1 + ''', ' + 'DISK = N''' + @BackupPath2 + ''', ' + 'DISK = N''' + @BackupPath3 + ''' ' + 'WITH DIFFERENTIAL, FORMAT, ' + 'MEDIANAME = N''AdventureWorksStripedSet0'', ' + 'MEDIADESCRIPTION = N''Striped differential media set for ' + @DATABASE + ' database'''; EXEC sp_executesql @SQL; GO
- Sube tu archivo de copia de seguridad a un bucket de Cloud Storage. Consulta Crea y configura un bucket de Cloud Storage.
Realiza una copia de seguridad diferencial para Amazon RDS
Para realizar la copia de seguridad diferencial de tu fuente de Amazon RDS, sigue estos pasos:
- Asegúrate de cumplir con los siguientes requisitos:
- Usas los requisitos de asignación de nombres correctos para tus archivos de copia de seguridad.
- Tus bases de datos de origen no usan el modelo de recuperación simple. Consulta Determina un modelo de recuperación para tu base de datos de Microsoft SQL Server en la documentación de Amazon RDS.
- Configura la capacidad de copia de seguridad nativa. Consulta Configura la copia de seguridad y el restablecimiento nativos en la documentación de Amazon RDS.
- Realiza la copia de seguridad diferencial de tu instancia de origen. Usa el procedimiento almacenado
rds_backup_databasecon el parámetrotypeestablecido enDIFFERENTIAL.Si el tamaño de tu base de datos supera los 5 TB, asegúrate de dividir la copia de seguridad completa en bandas separadas con el parámetro
@number_of_files. Cada división puede tener un tamaño máximo de 5 TB.Consulta Cómo crear una copia de seguridad de una base de datos en la documentación de Amazon RDS. También puedes consultar el siguiente comando de ejemplo:
Consulta de ejemplo para realizar una copia de seguridad diferencial en Amazon RDS
Este comando de ejemplo realiza una copia de seguridad diferencial de la base de datos
AdventureWorks2022. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @unixTimestamp varchar(30); declare @fileName varchar(1000); SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @unixTimestamp=CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); SELECT @fileName = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/full/' + @DATABASE + '.' + @unixTimestamp + '/' + CAST(database_id AS VARCHAR(10)) + '.' + CAST(family_guid AS VARCHAR(50)) + '.*.' + @unixTimestamp) FROM master.sys.database_recovery_status WHERE DB_NAME(database_id)=@DATABASE; exec msdb.dbo.rds_backup_database @source_db_name=@DATABASE, @s3_arn_to_backup_to=@fileName, @overwrite_s3_backup_file=1, @type='DIFFERENTIAL', @number_of_files=1;
- Sube tu archivo de copia de seguridad a un bucket de Cloud Storage. Consulta Crea y configura un bucket de Cloud Storage.
Realiza copias de seguridad del registro de transacciones
Los archivos de copia de seguridad del registro de transacciones contienen los cambios que se producen en tu base de datos de origen después de realizar la copia de seguridad completa. Las copias de seguridad del registro de transacciones son necesarias para la fase de carga continua de tu trabajo de migración. Puedes programar exportaciones y cargas periódicas de registros de transacciones para garantizar que las actualizaciones de datos se repliquen de forma continua en tu instancia de destino de Cloud SQL para SQL Server. Consulta Programa copias de seguridad del registro de transacciones.
Si usas archivos de copia de seguridad encriptados, también debes encriptar los archivos de registro de transacciones para la misma base de datos. Consulta Cómo usar copias de seguridad encriptadas.
Realiza una copia de seguridad del registro de transacciones para las instancias de SQL Server locales
Para realizar una copia de seguridad del registro de transacciones de tus bases de datos de SQL Server locales, sigue estos pasos:
- Asegúrate de cumplir con los siguientes requisitos:
- Usas los requisitos de asignación de nombres correctos para tus archivos de copia de seguridad.
- Tus bases de datos de origen no usan el modelo de recuperación simple. Consulta Modelos de recuperación (SQL Server) en la documentación de Microsoft.
- Exporta los archivos de registro de transacciones de tus bases de datos de origen de SQL Server. Consulta
Crea una copia de seguridad de un registro de transacciones en la documentación de Microsoft.
También puedes consultar el siguiente comando de ejemplo:
Ejemplo de comando de T-SQL para exportar archivos de registro de transacciones al disco local
Este comando de ejemplo crea una copia de seguridad del registro de transacciones de la base de datos
AdventureWorks2022y guarda el archivo en el disco local. El archivo de copia de seguridad resultante usa la convención de nomenclatura requerida.declare @DATABASE varchar(1000); SELECT @DATABASE = 'AdventureWorks2022'; declare @unixTimestamp varchar(1000); SELECT @unixTimestamp = CAST(DATEDIFF(s, '1970-01-01', GETUTCDATE()) AS VARCHAR(50)); DECLARE @BackupPath NVARCHAR(2000); SET @BackupPath = 'X:\SQLServerBackups\log\' + @DATABASE + '.' + @unixTimestamp + '.trn'; DECLARE @SQL NVARCHAR(MAX); SET @SQL = 'BACKUP LOG [' + @DATABASE + '] TO DISK = N''' + @BackupPath + ''''; EXEC sp_executesql @SQL; GO
- Sube los archivos de copia de seguridad del registro de transacciones al bucket de Cloud Storage que creaste para la migración.
Crea una copia de seguridad del registro de transacciones para Amazon RDS
Las copias de seguridad de registros de transacciones se crean automáticamente si las copias de seguridad automáticas están habilitadas en tu instancia de Amazon RDS. Consulta Habilita las copias de seguridad automáticas en la documentación de Amazon RDS.
Para usar archivos de copia de seguridad del registro de transacciones en tu migración, sigue estos pasos:
- Habilita el acceso a los archivos de registro de transacciones en tu instancia de Amazon RDS.
Consulta
Acceso a las copias de seguridad del registro de transacciones con RDS para SQL Server.
También puedes consultar el siguiente comando de ejemplo:
Ejemplo de llamada de procedimiento almacenado para habilitar el acceso al registro de transacciones en Amazon RDS
declare @DATABASE varchar(1000); declare @S3Bucket varchar(1000); declare @targetS3Arn varchar(1000);
SELECT @S3Bucket = 'dms-sqlserver-exports'; SELECT @DATABASE = 'AdventureWorks2022'; SELECT @targetS3Arn = ('arn:aws:s3:::' + @S3Bucket + '/' + @DATABASE + '/log/');
USE @DATABASE; exec msdb.dbo.rds_tlog_copy_setup @target_s3_arn=@targetS3Arn;
- Copia los archivos de copia de seguridad del registro de transacciones de tu bucket de S3 al bucket de Cloud Storage que creaste para la migración.