가용성 복제본에 백업 구성(SQL Server)

이 항목에서는 SQL Server 2012에서 SQL Server Management Studio, Transact-SQL 또는 PowerShell을 사용하여 AlwaysOn 가용성 그룹의 보조 복제본에 백업을 구성하는 방법에 대해 설명합니다.

[!참고]

보조 복제본에 백업에 대한 개요를 보려면 활성 보조 복제본: 보조 복제본에 백업(AlwaysOn 가용성 그룹)을 참조하십시오.

  • 시작하기 전 주의 사항:

    필수 구성 요소

    보안

  • 다음을 사용하여 보조 복제본에 백업을 구성하려면:

    SQL Server Management Studio

    Transact-SQL

    PowerShell

  • 후속 작업: 보조 복제본에 백업을 구성한 후의 작업

  • 백업 기본 설정에 대한 정보를 가져오려면

  • 관련 내용

시작하기 전 주의 사항

필수 구성 요소

주 복제본을 호스팅하는 서버 인스턴스에 연결되어 있어야 합니다.

보안

사용 권한

태스크

사용 권한

가용성 그룹을 만들 때 보조 복제본에 백업을 구성하려면

CREATE AVAILABILITY GROUP 서버 권한, ALTER ANY AVAILABILITY GROUP 권한, CONTROL SERVER 권한 중 하나와 sysadmin 고정 서버 역할의 멤버 자격이 필요합니다.

가용성 그룹 또는 가용성 복제본을 수정하려면

가용성 그룹에 대한 ALTER AVAILABILITY GROUP 권한, CONTROL AVAILABILITY GROUP 권한, ALTER ANY AVAILABILITY GROUP 권한 또는 CONTROL SERVER 권한이 필요합니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

SQL Server Management Studio 사용

보조 복제본에 백업을 구성하려면

  1. 개체 탐색기에서 주 복제본을 호스팅하는 서버 인스턴스에 연결하고 서버 이름을 클릭하여 해당 서버 트리를 확장합니다.

  2. AlwaysOn 고가용성 노드 및 가용성 그룹 노드를 차례로 확장합니다.

  3. 백업 기본 설정을 구성할 가용성 그룹을 클릭하고 속성 명령을 선택합니다.

  4. 가용성 그룹 속성 대화 상자에서 백업 기본 설정 페이지를 선택합니다.

  5. 백업 수행 위치 패널에서 가용성 그룹의 자동화된 백업 기본 설정을 다음 옵션 중 선택합니다.

    • 보조 사용
      백업이 보조 복제본에서 수행되도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우는 예외로, 이 경우에는 백업이 주 복제본에서 수행되어야 합니다. 이 옵션이 기본 옵션입니다.

    • 보조만
      백업이 주 복제본에서 수행되지 않도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우에는 백업이 수행되지 않아야 합니다.


    • 백업이 항상 주 복제본에서 수행되도록 지정합니다. 이 옵션은 백업이 보조 복제본에서 실행될 때 지원되지 않는 차등 백업 만들기와 같은 백업 기능이 필요한 경우에 유용합니다.

      중요 정보중요

      로그 전달을 사용하여 가용성 그룹의 보조 데이터베이스를 준비하려는 경우 모든 보조 데이터베이스가 준비되고 가용성 그룹에 조인될 때까지 자동화된 백업 기본 설정을 로 설정합니다.

    • 임의의 복제본
      백업을 수행할 복제본을 선택할 때 백업 작업에서 가용성 복제본의 역할을 무시하도록 지정합니다. 백업 작업에서는 각 가용성 복제본의 작동 상태 및 연결 상태와 함께 백업 우선 순위 등의 기타 요인을 평가할 수 있습니다.

    중요 정보중요

    자동화된 백업 기본 설정은 적용되지 않습니다. 이 기본 설정의 해석은 지정된 가용성 그룹의 데이터베이스에 대한 백업 작업으로 스크립팅하는 논리(있는 경우)에 따라 달라집니다. 자동화된 백업 기본 설정은 임시 백업에 영향을 주지 않습니다. 자세한 내용은 이 항목 뒷부분에 있는 후속 작업: 보조 복제본에 백업을 구성한 후의 작업을 참조하십시오.

  6. 복제본 백업 우선 순위 표를 사용하여 가용성 복제본의 백업 우선 순위를 변경할 수 있습니다. 이 표는 가용성 그룹에 대한 복제본을 호스팅하는 각 서버 인스턴스의 현재 백업 우선 순위를 표시합니다. 표 열은 다음과 같습니다.

    • 서버 인스턴스
      가용성 복제본을 호스팅하는 SQL Server 인스턴스의 이름입니다.

    • 백업 우선 순위(최저 = 1, 최고 = 100)
      이 복제본에 대한 백업을 수행하기 위한 우선 순위를 지정하며 동일한 가용성 그룹의 다른 복제본을 기준으로 합니다. 이 값은 0에서 100 사이의 정수입니다. 1은 가장 낮은 우선 순위를 나타내고 100은 가장 높은 우선 순위를 나타냅니다. 백업 우선 순위가 1이면 현재 사용 가능한 더 높은 우선 순위의 가용성 복제본이 없는 경우에만 해당 가용성 복제본이 백업 수행을 위해 선택됩니다.

    • 복제본 제외
      백업 수행을 위해 이 가용성 백업을 선택하지 않으려는 경우에 선택합니다. 이 값은 예를 들어 백업을 장애 조치할 대상으로 사용하지 않을 원격 가용성 복제본의 경우에 유용합니다.

  7. 변경 내용을 커밋하려면 확인을 클릭합니다.

백업 기본 설정 페이지에 액세스하는 다른 방법

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

Transact-SQL 사용

보조 복제본에 백업을 구성하려면

  1. 주 복제본을 호스팅하는 서버 인스턴스에 연결합니다.

  2. 새 가용성 그룹에 대해 CREATE AVAILABILITY GROUP(Transact-SQL) 문을 사용합니다. 기존 가용성 그룹을 수정하려는 경우 ALTER AVAILABILITY GROUP(Transact-SQL) 문을 사용합니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

PowerShell 사용

보조 복제본에 백업을 구성하려면

  1. 기본값(cd)을 주 복제본을 호스팅하는 서버 인스턴스로 설정합니다.

  2. 필요한 경우 추가하거나 수정할 각 가용성 복제본의 백업 우선 순위를 구성합니다. 이 우선 순위는 어느 복제본이 가용성 그룹의 데이터베이스에서 자동 백업 요청을 지원해야 하는지를 결정하기 위해(우선 순위가 가장 높은 복제본이 선택됨) 주 복제본을 호스팅하는 서버 인스턴스가 사용합니다. 이 우선 순위는 1부터 100까지의 임의의 숫자일 수 있습니다. 우선 순위 0은 백업 요청 지원을 위한 후보로 해당 복제본을 고려하지 않아야 함을 나타냅니다. 기본 설정은 50입니다.

    가용성 그룹에 가용성 복제본을 추가하는 경우 New-SqlAvailabilityReplica cmdlet을 사용합니다. 기존 가용성 복제본을 수정하는 경우 Set-SqlAvailabilityReplica cmdlet을 사용합니다. 두 경우 모두 BackupPriority n 매개 변수를 지정해야 하며 여기서 n은 0부터 100까지의 값입니다.

    예를 들어 다음 명령은 가용성 복제본 MyReplica의 백업 우선 순위를 60으로 설정합니다.

    Set-SqlAvailabilityReplica -BackupPriority 60 `
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica
    
  3. 필요한 경우 만들거나 수정하는 가용성 그룹에 대해 자동화된 백업 기본 설정을 구성합니다. 이 기본 설정은 백업을 수행할 위치를 선택할 때 백업 작업에서 주 복제본을 평가하는 방식을 나타냅니다. 기본 설정은 보조 복제본을 사용하는 것입니다.

    가용성 그룹을 만드는 경우 New-SqlAvailabilityGroup cmdlet을 사용합니다. 기존 가용성 그룹을 수정하는 경우 Set-SqlAvailabilityGroup cmdlet을 사용합니다. 두 경우 모두 AutomatedBackupPreference 매개 변수를 지정합니다.

    각 항목이 나타내는 의미는 다음과 같습니다.

    • Primary
      백업이 항상 주 복제본에서 수행되도록 지정합니다. 이 옵션은 백업이 보조 복제본에서 실행될 때 지원되지 않는 차등 백업 만들기와 같은 백업 기능이 필요한 경우에 유용합니다.

      중요 정보중요

      로그 전달을 사용하여 가용성 그룹의 보조 데이터베이스를 준비하려는 경우 모든 보조 데이터베이스가 준비되고 가용성 그룹에 조인될 때까지 자동화된 백업 기본 설정을 Primary로 설정합니다.

    • SecondaryOnly
      백업이 주 복제본에서 수행되지 않도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우에는 백업이 수행되지 않아야 합니다.

    • Secondary
      백업이 보조 복제본에서 수행되도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우는 예외로, 이 경우에는 백업이 주 복제본에서 수행되어야 합니다. 이것이 기본 동작입니다.

    • None
      백업을 수행할 복제본을 선택할 때 백업 작업에서 가용성 복제본의 역할을 무시하도록 지정합니다. 백업 작업에서는 각 가용성 복제본의 작동 상태 및 연결 상태와 함께 백업 우선 순위 등의 기타 요인을 평가할 수 있습니다.

    중요 정보중요

    AutomatedBackupPreference는 적용되지 않습니다. 이 기본 설정의 해석은 지정된 가용성 그룹의 데이터베이스에 대한 백업 작업으로 스크립팅하는 논리(있는 경우)에 따라 달라집니다. 자동화된 백업 기본 설정은 임시 백업에 영향을 주지 않습니다. 자세한 내용은 이 항목 뒷부분에 있는 후속 작업: 보조 복제본에 백업을 구성한 후의 작업을 참조하십시오.

    예를 들어 다음 명령은 가용성 그룹 MyAg의 AutomatedBackupPreference 속성을 SecondaryOnly로 설정합니다. 주 복제본에서는 이 가용성 그룹의 데이터베이스 자동 백업이 절대 발생하지 않으며 대신 백업 우선 순위 설정 값이 가장 높은 보조 복제본으로 백업이 리디렉션됩니다.

    Set-SqlAvailabilityGroup `
    -Path SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg `
    -AutomatedBackupPreference SecondaryOnly
    

[!참고]

cmdlet의 구문을 보려면 SQL Server PowerShell 환경에서 Get-Help cmdlet을 사용합니다. 자세한 내용은 SQL Server PowerShell 도움말 보기을 참조하십시오.

SQL Server PowerShell 공급자를 설정하고 사용하려면

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

후속 작업: 보조 복제본에 백업을 구성한 후의 작업

지정된 가용성 그룹에 대해 자동화된 백업 기본 설정을 고려하도록 하려면 백업 우선 순위가 0보다 큰(>0) 가용성 복제본을 호스팅하는 각 서버 인스턴스에서 가용성 그룹의 데이터베이스에 대한 백업 작업을 스크립팅해야 합니다. 현재 복제본이 기본 백업 복제본인지 여부를 확인하려면 백업 스크립트에서 sys.fn_hadr_backup_is_preferred_replica 함수를 사용합니다. 현재 서버 인스턴스가 호스팅하는 가용성 복제본이 백업에 대한 선호 복제본인 경우 이 함수가 1을 반환합니다. 그렇지 않으면 함수가 0을 반환합니다. 각 가용성 복제본에서 이 함수를 쿼리하는 단순 스크립트를 실행하여 지정된 백업 작업을 실행할 복제본을 결정할 수 있습니다. 예를 들어 백업 작업 스크립트의 일반적인 코드 조각은 다음과 같습니다.

IF (NOT sys.fn_hadr_backup_is_preferred_replica(@DBNAME))
BEGIN
      Select ‘This is not the preferred replica, exiting with success’;
      RETURN 0 – This is a normal, expected condition, so the script returns success
END
BACKUP DATABASE @DBNAME TO DISK=<disk>
   WITH COPY_ONLY;

이 논리를 사용하여 백업 작업을 스크립팅하면 동일한 일정으로 모든 가용성 복제본에 대해 실행할 작업을 예약할 수 있습니다. 이러한 각 작업은 동일한 데이터를 조사하여 실행해야 하는 작업을 확인하므로 예약된 작업 중 하나만이 실제로 백업 단계로 진행됩니다. 장애 조치(Failover)의 경우 스크립트 또는 작업을 수정할 필요가 없습니다. 가용성 복제본을 추가하도록 가용성 그룹을 다시 구성한 경우 백업 작업을 관리하려면 백업 작업을 복사하거나 예약하기만 하면 됩니다. 가용성 복제본을 제거한 경우 해당 복제본을 호스팅하는 서버 인스턴스에서 백업 작업을 삭제합니다.

팁

유지 관리 계획 마법사를 사용하여 지정된 백업 작업을 만드는 경우 해당 작업에는 sys.fn_hadr_backup_is_preferred_replica 함수를 호출하고 확인하는 스크립팅 논리가 자동으로 포함됩니다. 그러나 백업 작업이 "기본 복제본이 아닙니다..." 메시지를 반환하지는 않습니다. 가용성 그룹의 가용성 복제본을 호스팅하는 각 서버 인스턴스에서 각 가용성 데이터베이스에 대한 작업을 만들어야 합니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

백업 기본 설정에 대한 정보를 가져오려면

다음은 보조 복제본에서의 백업과 관련된 정보를 가져오는 데 유용합니다.

정보

관련 열

sys.fn_hadr_backup_is_preferred_replica

현재 복제본이 기본 백업 복제본인지 여부

해당 사항 없음

sys.availability_groups

자동화된 백업 기본 설정

automated_backup_preference

automated_backup_preference_desc

sys.availability_replicas

지정된 가용성 복제본의 백업 우선 순위

backup_priority

sys.dm_hadr_availability_replica_states

복제본이 서버 인스턴스의 로컬 복제본인지 여부

현재 역할

작동 상태

연결 상태

가용성 복제본의 동기화 상태

is_local

role, role_desc

operational_state, operational_state_desc

connected_state, connected_state_desc

synchronization_health, synchronization_health_desc

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

관련 내용

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[맨 위로 이동]

참고 항목

개념

AlwaysOn 가용성 그룹 개요(SQL Server)

활성 보조 복제본: 보조 복제본에 백업(AlwaysOn 가용성 그룹)