Copia de las copias de seguridad del registro de transacciones - Amazon Relational Database Service

Copia de las copias de seguridad del registro de transacciones

Para copiar un conjunto de copias de seguridad del registro de transacciones disponibles para una base de datos individual en su bucket de Amazon S3, ejecute el procedimiento rds_tlog_backup_copy_to_S3 almacenado. El procedimiento rds_tlog_backup_copy_to_S3 almacenado iniciará una nueva tarea para copiar las copias de seguridad del registro de transacciones.

nota

El procedimiento rds_tlog_backup_copy_to_S3 almacenado copiará las copias de seguridad del registro de transacciones sin validarlas con el atributo is_log_chain_broken. Por este motivo, debe confirmar manualmente una cadena de registros ininterrumpida antes de ejecutar el procedimiento almacenado rds_tlog_backup_copy_to_S3. Para obtener más información, consulte Validación de la cadena de registros de copias de seguridad del registro de transacciones.

ejemplo de uso del procedimiento rds_tlog_backup_copy_to_S3 almacenado
exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='mydatabasename', [@kms_key_arn='arn:aws:kms:region:account-id:key/key-id'], [@backup_file_start_time='2022-09-01 01:00:15'], [@backup_file_end_time='2022-09-01 21:30:45'], [@starting_lsn=149000000112100001], [@ending_lsn=149000000120400001], [@rds_backup_starting_seq_id=5], [@rds_backup_ending_seq_id=10];

Están disponibles los siguientes parámetros de entrada:

Parámetro Descripción

@db_name

Nombre de la base de datos proporcionado para copiar las copias de seguridad del registro de transacciones.

@kms_key_arn

Una clave de KMS administrada por el cliente. Si cifra su instancia de base de datos con una clave de KMS administrada de AWS, debe crear una clave administrada por el cliente. Si cifra la instancia de base de datos con una clave administrada por el cliente, puede utilizar el mismo ARN de clave de KMS.

@backup_file_start_time

La marca de tiempo UTC proporcionada en la columna [backup_file_time_utc] de la función rds_fn_list_tlog_backup_metadata.

@backup_file_end_time

La marca de tiempo UTC proporcionada en la columna [backup_file_time_utc] de la función rds_fn_list_tlog_backup_metadata.

@starting_lsn

Número de secuencia de registro (LSN) proporcionado en la columna [starting_lsn] de la función rds_fn_list_tlog_backup_metadata.

@ending_lsn

Número de secuencia de registro (LSN) proporcionado en la columna [ending_lsn] de la función rds_fn_list_tlog_backup_metadata.

@rds_backup_starting_seq_id

ID de secuencia proporcionado en la columna [rds_backup_seq_id] de la función rds_fn_list_tlog_backup_metadata.

@rds_backup_ending_seq_id

ID de secuencia proporcionado en la columna [rds_backup_seq_id] de la función rds_fn_list_tlog_backup_metadata.

Puede especificar un conjunto de parámetros de tiempo, LSN o ID de secuencia. Solo se requiere un conjunto de parámetros.

También puede especificar un único parámetro en cualquiera de los conjuntos. Por ejemplo, al proporcionar un valor únicamente para el parámetro backup_file_end_time, todos los archivos de copia de seguridad del registro de transacciones disponibles antes de esa fecha dentro del límite de siete días se copiarán a su bucket de Amazon S3.

A continuación se muestran las combinaciones de parámetros de entrada válidas para el procedimiento rds_tlog_backup_copy_to_S3 almacenado.

Parámetros proporcionados Resultado esperado
exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name = 'testdb1', @backup_file_start_time='2022-08-23 00:00:00', @backup_file_end_time='2022-08-30 00:00:00';

Copia las copias de seguridad del registro de transacciones de los últimos siete días y se encuentra en el rango proporcionado entre backup_file_start_time y backup_file_end_time. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones que se generaron entre «2021-08-23 00:00:00» y «2021-08-30 00:00:00».

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name = 'testdb1', @backup_file_start_time='2022-08-23 00:00:00';

Copia las copias de seguridad del registro de transacciones de los últimos siete días empezando por la backup_file_start_time proporcionada. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones desde «2021-08-23 00:00:00» hasta la última copia de seguridad del registro de transacciones.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name = 'testdb1', @backup_file_end_time='2022-08-30 00:00:00';

Copia las copias de seguridad del registro de transacciones de los últimos siete días hasta la backup_file_end_time proporcionada. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones entre «2021-08-23 00:00:00» y «2021-08-30 00:00:00».

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @starting_lsn =1490000000040007, @ending_lsn = 1490000000050009;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días y que se encuentran en el rango proporcionado entre starting_lsn y ending_lsn. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones de los últimos siete días con un intervalo de LSN comprendido entre 1490000000040007 y 1490000000050009.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @starting_lsn =1490000000040007;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días empezando por la starting_lsn. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones desde el LSN 1490000000040007 hasta la última copia de seguridad del registro de transacciones.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @ending_lsn =1490000000050009;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días hasta la ending_lsn proporcionada. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones empezando por los últimos siete días hasta el LSN 1490000000050009.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @rds_backup_starting_seq_id= 2000, @rds_backup_ending_seq_id= 5000;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días y que se encuentran en el rango proporcionado entre rds_backup_starting_seq_id y rds_backup_ending_seq_id. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones de los últimos siete días y dentro del rango de ID de secuencia de copia de seguridad de RDS proporcionado, empezando por seq_id 2000 y hasta seq_id 5000.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @rds_backup_starting_seq_id= 2000;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días empezando por la rds_backup_starting_seq_id. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones desde el seq_id 2000 hasta la última copia de seguridad del registro de transacciones.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @rds_backup_ending_seq_id= 5000;

Copia las copias de seguridad del registro de transacciones disponibles en los últimos siete días hasta la rds_backup_ending_seq_id proporcionada. En este ejemplo, el procedimiento almacenado copiará las copias de seguridad del registro de transacciones empezando por los últimos siete días hasta el seq_id 5000.

exec msdb.dbo.rds_tlog_backup_copy_to_S3 @db_name='testdb1', @rds_backup_starting_seq_id= 2000; @rds_backup_ending_seq_id= 2000;

Copia una única copia de seguridad del registro de transacciones con el rds_backup_starting_seq_id proporcionado, si está disponible en los últimos siete días. En este ejemplo, el procedimiento almacenado copiará una única copia de seguridad del registro de transacciones que tenga un seq_id de 2000, si existe en los últimos siete días.

Validación de la cadena de registros de copias de seguridad del registro de transacciones

Las bases de datos configuradas para acceder a las copias de seguridad del registro de transacciones deben tener habilitada la retención automática de copias de seguridad. La retención automática de copias de seguridad establece las bases de datos de la instancia de base de datos en el modelo de recuperación FULL. Para permitir la restauración puntual de una base de datos, evite cambiar el modelo de recuperación de la base de datos, ya que puede provocar la interrupción de la cadena de registros. Se recomienda mantener la base de datos configurada en el modelo de recuperación FULL.

Para validar manualmente la cadena de registros antes de copiar las copias de seguridad del registro de transacciones, llame a la función rds_fn_list_tlog_backup_metadata y revise los valores de la columna is_log_chain_broken. Un valor de 1 indica que la cadena de registro se interrumpió entre la copia de seguridad del registro actual y la copia de seguridad del registro anterior.

El siguiente ejemplo muestra una cadena de registros rota en la salida del procedimiento almacenado rds_fn_list_tlog_backup_metadata.

Resultado de rds_fn_list_tlog_backup_metadata que muestra una cadena de registros rota.

En una cadena de registros normal, el valor del número de secuencia de registro (LSN) de first_lsn para un un rds_sequence_id determinado debe coincidir con el valor de last_lsn del rds_sequence_id anterior. En la imagen, el rds_sequence_id de 45 tiene un valor first_lsn de 90987, que no coincide con el valor last_lsn de 90985 del rds_sequence_id anterior de 44.

Para obtener más información sobre la arquitectura del registro de transacciones de SQL Server y los números de secuencia de registro, consulte la Arquitectura lógica del registro de transacciones en la documentación de Microsoft SQL Server.