사용 가능한 트랜잭션 로그 백업 나열하기

사용 가능한 트랜잭션 로그 백업 나열하기

RDS for SQL Server에서 특정 데이터베이스에 사용 가능한 트랜잭션 로그 백업을 나열하는 방법을 알아볼게요. 백업 보존 기간이 설정된 데이터베이스는 최대 7일치 트랜잭션 로그 백업을 Amazon S3 버킷으로 복사할 수 있어요.

출처: 문서

본문

RDS for SQL Server에서는 전체 복구 모델(full recovery model)로 구성되고 DB 인스턴스 백업 보존 기간이 하루 이상으로 설정된 데이터베이스에 대해 트랜잭션 로그 백업이 자동으로 활성화돼요. 트랜잭션 로그 백업 액세스를 활성화하면 최대 7일치의 트랜잭션 로그 백업을 Amazon S3 버킷으로 복사할 수 있게 돼요.

트랜잭션 로그 백업 액세스를 활성화한 후에는 이 기능을 사용하여 사용 가능한 트랜잭션 로그 백업 파일을 나열하고 복사할 수 있어요.

트랜잭션 로그 백업 나열하기

개별 데이터베이스에 대해 사용 가능한 모든 트랜잭션 로그 백업을 나열하려면 rds_fn_list_tlog_backup_metadata 함수를 호출하세요. 함수를 호출할 때 ORDER BY 또는 WHERE 절을 사용할 수 있어요.

사용 가능한 트랜잭션 로그 백업 파일 나열 및 필터링 예시:

SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename');
SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename') WHERE rds_backup_seq_id = 3507;
SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename') WHERE backup_file_time_utc > '2022-09-15 20:44:01' ORDER BY backup_file_time_utc DESC;

rds_fn_list_tlog_backup_metadata 함수는 다음 출력을 반환해요:

열 이름 데이터 타입 설명
db_name sysname 트랜잭션 로그 백업을 나열할 데이터베이스 이름이에요.
db_id int 입력 매개변수 db_name에 대한 내부 데이터베이스 식별자예요.
family_guid uniqueidentifier 생성 시 원본 데이터베이스의 고유 ID예요. 이 값은 데이터베이스를 복원할 때(다른 데이터베이스 이름으로도) 동일하게 유지돼요.
rds_backup_seq_id int RDS가 각 트랜잭션 로그 백업 파일의 시퀀스 번호를 유지하는 데 내부적으로 사용하는 ID예요.
backup_file_epoch bigint 트랜잭션 백업 파일이 생성된 epoch 시간이에요.
backup_file_time_utc datetime backup_file_epoch 값을 UTC 시간으로 변환한 값이에요.
starting_lsn numeric(25,0) 트랜잭션 로그 백업 파일의 첫 번째 또는 가장 오래된 로그 레코드의 로그 시퀀스 번호(LSN)예요.
ending_lsn numeric(25,0) 트랜잭션 로그 백업 파일의 마지막 또는 다음 로그 레코드의 로그 시퀀스 번호(LSN)예요.
is_log_chain_broken bit 현재 트랜잭션 로그 백업 파일과 이전 트랜잭션 로그 백업 파일 사이에 로그 체인이 깨졌는지를 나타내는 부울 값이에요.
file_size_bytes bigint 트랜잭션 백업 세트의 크기(바이트)예요.
Error varchar(4000) rds_fn_list_tlog_backup_metadata 함수가 예외를 발생시킨 경우의 오류 메시지예요. 예외가 없으면 NULL이에요.

더 알아보기 (Learn more)