SQL Server RDS를 S3 버킷에 백업하는 방법

SQL Server RDS 인스턴스의 백업 관리는 데이터 가용성과 재해 복구를 보장하는 데 중요합니다. AWS는 SQL Server RDS 데이터베이스를 직접 Amazon S3로 백업하는 명령을 포함하여 이 프로세스를 용이하게 하는 도구를 제공합니다. 이 문서에서는 백업 및 복원을 수행하는 데 필요한 명령 및 구성에 대해 안내합니다.

SQL Server RDS를 S3로 백업하기

백업 생성에 사용되는 주요 저장 프로시저는 msdb.dbo.rds_backup_database입니다. 이 명령을 사용하면 백업할 데이터베이스와 백업이 저장될 S3 위치를 지정할 수 있습니다.

패키지 매개변수

이 저장 프로시저는 몇 가지 매개변수를 지원하며 필수선택적으로 분류됩니다.

필수 매개변수

  • @source_db_name: 백업할 데이터베이스의 이름입니다.
  • @s3_arn_to_backup_to: 백업에 사용할 Amazon S3 버킷을 나타내는 ARN으로서 백업 파일 이름도 포함됩니다.
    • 파일의 확장자는 어떤 것이든 될 수 있지만, .bak이 일반적으로 사용됩니다.

선택적 매개변수

  • @kms_master_key_arn

    • 백업을 암호화하는 데 사용할 대칭 암호화 KMS 키의 ARN입니다.
    • 기본 암호화 키를 사용할 수 없습니다. 기본 키를 사용하면 백업 실패가 발생합니다.
    • KMS 키를 지정하지 않으면 백업 파일이 암호화되지 않습니다.
    • 대칭 KMS 키만 지원됩니다.
  • @overwrite_s3_backup_file

    • 기존 파일을 덮어쓸지 여부를 결정합니다.
    • 0 (기본값): 기존 파일을 덮어쓰지 않습니다. 파일이 이미 있으면 오류가 발생합니다.
    • 1: 기존 파일을 덮어쓰며, 백업 파일이 아니더라도 덮어씁니다.
  • @type

    • 백업 유형을 지정합니다.
    • FULL (기본값): 전체 백업을 수행합니다.
    • DIFFERENTIAL: 마지막 전체 백업을 기반으로 차등 백업을 생성합니다.
    • 중요: 차등 백업이 작동하려면 마지막 전체 백업과 차등 백업 사이에 스냅샷이 존재해서는 안 됩니다. 스냅샷이 존재하는 경우 차등 백업을 진행하기 전에 다른 전체 백업을 수행하십시오. 아래는 마지막 전체 백업을 확인하는 예시 쿼리입니다:

      MS SQL

       

  • @number_of_files

    • 백업을 나눌 파일(청크)의 수를 지정합니다. 최대: 10.
    • 1로 설정하거나 생략하면 단일 백업 파일이 생성됩니다.
    • 다중 파일 백업은 파일 이름에 * 하나를 사용해야 하며, 생성 중에 알파벳 및 숫자 문자열로 대체됩니다. 예를 들어:
      • 입력: backup*.bak, @number_of_files = 4
      • 출력: backup1-of-4.bak, backup2-of-4.bak, backup3-of-4.bak, backup4-of-4.bak
  • @block_size

    • 백업 작업의 물리적 블록 크기(바이트)를 지정합니다.
    • 유효한 값: 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536.
  • @max_transfer_size

    • I/O 작업당 전송되는 데이터의 최대량(바이트)을 나타냅니다.
    • 유효한 값: 65536의 배수부터 4194304 바이트(4 MB)까지.
  • @buffer_count

    • 백업 프로세스 중 사용되는 총 I/O 버퍼 수입니다.

Command Syntax

MS SQL

예: S3로 전체 백업

MS SQL

백업 압축 구성

공간을 절약하고 전송 시간을 줄이기 위해 SQL Server RDS 백업에 대해 압축을 활성화할 수 있습니다.

압축 활성화

MS SQL

 

압축 비활성화

MS SQL

참고: SQL Express는 백업 압축을 지원하지 않으며, 이를 활성화하면 백업 실패가 발생할 수 있습니다.

네이티브 SQL Server 백업 수행

Amazon RDS는 또한 네이티브 SQL Server 백업 기능을 지원합니다. 아래는 백업 및 복원 작업을 위한 명령어입니다.

백업 명령어

전체 백업 명령어

MS SQL

차등 백업 명령어

MS SQL

 

복원 명령어

차등 복원 명령어

MS SQL

차등 복원 명령어

MS SQL

 

백업 작업 모니터링 및 관리

작업 상태 확인:

MS SQL

백업 작업 취소:

MS SQL

고려 사항

  • 명령어에서 사용하는 S3 버킷이 RDS 인스턴스에서 액세스를 허용하는 데 필요한 권한을 가지고 있는지 확인하십시오.
  • 민감한 데이터의 경우, @kms_master_key_arn을 지정하여 S3에 저장하기 전에 백업을 암호화하는 데 AWS KMS 마스터 키를 사용할 수 있습니다.

추가 자료

더 자세한 예제 및 정보는 공식 AWS SQL Server 백업 문서를 참조하십시오.

이 가이드는 SQL Server RDS 백업을 Amazon S3로 관리하는 견고한 기반을 제공합니다. 더 고급 구성을 위해서는 AWS 문서를 참조하거나 제공된 매개변수를 실험하여 환경에 맞게 백업 프로세스를 세밀하게 조정해보세요.

Source:
https://dzone.com/articles/how-to-backup-sql-server-rds-to-an-s3-bucket