가용성 복제본에 백업 구성(SQL Server)Configure Backup on Availability Replicas (SQL Server)

이 항목에서는 SQL Server Management StudioSQL Server Management Studio에서 Transact-SQLTransact-SQL, SQL Server 2017SQL Server 2017또는 PowerShell을 사용하여 Always On 가용성 그룹의 보조 복제본에 백업을 구성하는 방법에 대해 설명합니다.This topic describes how to configure backup on secondary replicas for an Always On availability group by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell in SQL Server 2017SQL Server 2017.

참고

보조 복제본에 백업에 대한 개요를 보려면 활성 보조: 보조 복제본에 백업(Always On 가용성 그룹)또는 PowerShell을 사용하여 Always On 가용성 그룹의 보조 복제본에 백업을 구성하는 방법에 대해 설명합니다.For an introduction to backup on secondary replicas, see Active Secondaries: Backup on Secondary Replicas (Always On Availability Groups).

시작하기 전 주의 사항 Before You Begin

필수 구성 요소 Prerequisites

주 복제본을 호스팅하는 서버 인스턴스에 연결되어 있어야 합니다.You must be connected to the server instance that hosts the primary replica.

보안 Security

사용 권한 Permissions

태스크Task 사용 권한Permissions
가용성 그룹을 만들 때 보조 복제본에 백업을 구성하려면To configure backup on secondary replicas when creating an availability group CREATE AVAILABILITY GROUP 서버 권한, ALTER ANY AVAILABILITY GROUP 권한, CONTROL SERVER 권한 중 하나와 sysadmin 고정 서버 역할의 멤버 자격이 필요합니다.Requires membership in the sysadmin fixed server role and either CREATE AVAILABILITY GROUP server permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.
가용성 그룹 또는 가용성 복제본을 수정하려면To modify an availability group or availability replica 가용성 그룹에 대한 ALTER AVAILABILITY GROUP 권한, CONTROL AVAILABILITY GROUP 권한, ALTER ANY AVAILABILITY GROUP 권한 또는 CONTROL SERVER 권한이 필요합니다.Requires ALTER AVAILABILITY GROUP permission on the availability group, CONTROL AVAILABILITY GROUP permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.

SQL Server Management Studio 사용 Using SQL Server Management Studio

보조 복제본에 백업을 구성하려면To configure backup on secondary replicas

  1. 개체 탐색기에서 주 복제본을 호스팅하는 서버 인스턴스에 연결하고 서버 트리를 확장할 서버 이름을 클릭합니다.In Object Explorer, connect to the server instance that hosts the primary replica, and click the server name to expand the server tree.

  2. Always On 고가용성 노드 및 가용성 그룹 노드를 확장합니다.Expand the Always On High Availability node and the Availability Groups node.

  3. 백업 기본 설정을 구성할 가용성 그룹을 클릭하고 속성 명령을 선택합니다.Click the availability group whose backup preferences you want to configure, and select the Properties command.

  4. 가용성 그룹 속성 대화 상자에서 백업 기본 설정 페이지를 선택합니다.In the Availability Group Properties dialog box, select Backup Preferences page.

  5. 백업 수행 위치 패널에서 가용성 그룹의 자동화된 백업 기본 설정을 다음 옵션 중 선택합니다.On the Where should backups occur? panel, select the automated backup preference for the availability group, one of:

    보조 사용Prefer Secondary
    백업이 보조 복제본에서 수행되도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우는 예외로,Specifies that backups should occur on a secondary replica except when the primary replica is the only replica online. 이 경우에는 백업이 주 복제본에서 수행되어야 합니다.In that case, the backup should occur on the primary replica. 이 옵션이 기본 옵션입니다.This is the default option.

    보조만Secondary only
    백업이 주 복제본에서 수행되지 않도록 지정합니다.Specifies that backups should never be performed on the primary replica. 주 복제본이 유일한 온라인 복제본인 경우에는 백업이 수행되지 않아야 합니다.If the primary replica is the only replica online, the backup should not occur.

    Primary
    백업이 항상 주 복제본에서 수행되도록 지정합니다.Specifies that the backups should always occur on the primary replica. 이 옵션은 백업이 보조 복제본에서 실행될 때 지원되지 않는 차등 백업 만들기와 같은 백업 기능이 필요한 경우에 유용합니다.This option is useful if you need backup features, such as creating differential backups, that are not supported when backup is run on a secondary replica.

    중요

    로그 전달을 사용하여 가용성 그룹의 보조 데이터베이스를 준비하려는 경우 모든 보조 데이터베이스가 준비되고 가용성 그룹에 조인될 때까지 자동화된 백업 기본 설정을 로 설정합니다.If you plan to use log shipping to prepare any secondary databases for an availability group, set the automated backup preference to Primary until all the secondary databases have been prepared and joined to the availability group.

    임의의 복제본Any Replica
    백업을 수행할 복제본을 선택할 때 백업 작업에서 가용성 복제본의 역할을 무시하도록 지정합니다.Specifies that you prefer that backup jobs ignore the role of the availability replicas when choosing the replica to perform backups. 백업 작업에서는 각 가용성 복제본의 작동 상태 및 연결 상태와 함께 백업 우선 순위 등의 기타 요인을 평가할 수 있습니다.Note backup jobs might evaluate other factors such as backup priority of each availability replica in combination with its operational state and connected state.

    중요

    자동화된 백업 기본 설정은 적용되지 않습니다.There is no enforcement of the automated backup preference setting. 이 기본 설정의 해석은 지정된 가용성 그룹의 데이터베이스에 대한 백업 작업으로 스크립팅하는 논리(있는 경우)에 따라 달라집니다.The interpretation of this preference depends on the logic, if any, that you script into backup jobs for the databases in a given availability group. 자동화된 백업 기본 설정은 임시 백업에는 영향을 미치지 않습니다.The automated backup preference setting has no impact on ad-hoc backups. 자세한 내용은 이 항목의 뒷부분에 나오는 후속 작업: 보조 복제본에 백업을 구성한 후 을 참조하세요.For more information, see see Follow Up: After Configuring Backup on Secondary Replicas later in this topic.

  6. 복제본 백업 우선 순위 표를 사용하여 가용성 복제본의 백업 우선 순위를 변경할 수 있습니다.Use the Replica backup priorities grid to change the backup priority of the availability replicas. 이 표는 가용성 그룹에 대한 복제본을 호스팅하는 각 서버 인스턴스의 현재 백업 우선 순위를 표시합니다.This grid displays the current backup priority of each server instance that hosts a replica for the availability group. 표 열은 다음과 같습니다.The grid columns are as follows:

    서버 인스턴스Server Instance
    가용성 복제본을 호스팅하는 SQL ServerSQL Server 의 인스턴스 이름입니다.The name of the instance of SQL ServerSQL Server that hosts the availability replica.

    백업 우선 순위(최저 = 1, 최고 = 100)Backup Priority (Lowest=1, Highest=100)
    이 복제본에 대한 백업을 수행하기 위한 우선 순위를 지정하며 동일한 가용성 그룹의 다른 복제본을 기준으로 합니다.Specifies your priority for performing backups on this replica relative to the other replicas in the same availability group. 이 값은 0에서 100 사이의 정수입니다.The value is an integer in the range of 0..100. 1은 가장 낮은 우선 순위를 나타내고 100은 가장 높은 우선 순위를 나타냅니다.1 indicates the lowest priority, and 100 indicates the highest priority. 백업 우선 순위 가 1이면 현재 사용 가능한 더 높은 우선 순위의 가용성 복제본이 없는 경우에만 해당 가용성 복제본이 백업 수행을 위해 선택됩니다.If Backup Priority = 1, the availability replica would be chosen for performing backups only if no higher priority availability replicas are currently available.

    복제본 제외Exclude Replica
    백업 수행을 위해 이 가용성 백업을 선택하지 않으려는 경우에 선택합니다.Select if you never want this availability replica to be chosen for performing backups. 이 값은 예를 들어 백업을 장애 조치할 대상으로 사용하지 않을 원격 가용성 복제본의 경우에 유용합니다.This is useful, for example, for a remote availability replica to which you never want backups to fail over.

  7. 변경 내용을 커밋하려면 확인을 클릭합니다.To commit your changes, click OK.

    백업 기본 설정 페이지에 액세스하는 다른 방법Alternative ways to access the Backup Preferences page

Transact-SQL 사용 Using Transact-SQL

보조 복제본에 백업을 구성하려면To configure backup on secondary replicas

  1. 주 복제본을 호스팅하는 서버 인스턴스에 연결합니다.Connect to the server instance that hosts the primary replica.

  2. 새 가용성 그룹을 만들려는 경우 CREATE AVAILABILITY GROUP(Transact-SQL)을 사용하세요.For a new availability group, use the CREATE AVAILABILITY GROUP (Transact-SQL) statement. 기존 가용성 그룹을 수정하려는 경우 ALTER AVAILABILITY GROUP(Transact-SQL) 문을 사용합니다.If you are modifying an existing availability group, use the ALTER AVAILABILITY GROUP (Transact-SQL) statement.

PowerShell 사용 Using PowerShell

보조 복제본에 백업을 구성하려면To configure backup on secondary replicas

  1. 기본값(cd)을 주 복제본을 호스트하는 서버 인스턴스로 설정합니다.Set default (cd) to the server instance that hosts the primary replica.

  2. 필요한 경우 추가하거나 수정할 각 가용성 복제본의 백업 우선 순위를 구성합니다.Optionally, configure the backup priority of each availability replica that you are adding or modifying. 이 우선 순위는 어느 복제본이 가용성 그룹의 데이터베이스에서 자동 백업 요청을 지원해야 하는지를 결정하기 위해(우선 순위가 가장 높은 복제본이 선택됨) 주 복제본을 호스팅하는 서버 인스턴스가 사용합니다.This priority is used by the server instance that hosts the primary replica to decide which replica should service an automated backup request on a database in the availability group (the replica with highest priority is chosen). 이 우선 순위는 1부터 100까지의 임의의 숫자일 수 있습니다.This priority can be any number between 0 and 100, inclusive. 우선 순위 0은 백업 요청 지원을 위한 후보로 해당 복제본을 고려하지 않아야 함을 나타냅니다.A priority of 0 indicates that the replica should not be considered as a candidate for servicing backup requests. 기본 설정은 50입니다.The default setting is 50.

    가용성 그룹에 가용성 복제본을 추가하는 경우 New-SqlAvailabilityReplica cmdlet을 사용합니다.When adding an availability replica to an availability group, use the New-SqlAvailabilityReplica cmdlet. 기존 가용성 복제본을 수정하는 경우 Set-SqlAvailabilityReplica cmdlet을 사용합니다.When modifying an existing availability replica, use the Set-SqlAvailabilityReplica cmdlet. 두 경우 모두 BackupPriorityn 매개 변수를 지정해야 하며 여기서 n 은 0부터 100까지의 값입니다.In either case, specify the BackupPriorityn parameter, where n is a value from 0 to 100.

    예를 들어 다음 명령은 가용성 복제본 MyReplica 의 백업 우선 순위를 60으로 설정합니다.For example, the following command sets the backup priority of the availability replica MyReplica to 60.

    Set-SqlAvailabilityReplica -BackupPriority 60 `  
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica  
    
  3. 필요한 경우 만들거나 수정하는 가용성 그룹에 대해 자동화된 백업 기본 설정을 구성합니다.Optionally, configure the automated backup preference for the availability group that you are creating or modifying. 이 기본 설정은 백업을 수행할 위치를 선택할 때 백업 작업에서 주 복제본을 평가하는 방식을 나타냅니다.This preference indicates how a backup job should evaluate the primary replica when choosing where to perform backups. 기본 설정은 보조 복제본을 사용하는 것입니다.The default setting is to prefer secondary replicas.

    가용성 그룹을 만들 때 New-SqlAvailabilityGroup cmdlet을 사용합니다.When creating an availability group, use the New-SqlAvailabilityGroup cmdlet. 기존 가용성 그룹을 수정할 때 Set-SqlAvailabilityGroup cmdlet을 사용합니다.When modifying an existing availability group, use the Set-SqlAvailabilityGroup cmdlet. 두 경우 모두 AutomatedBackupPreference 매개 변수를 지정합니다.In either case, specify the AutomatedBackupPreference parameter.

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

    Primary
    백업이 항상 주 복제본에서 수행되도록 지정합니다.Specifies that the backups should always occur on the primary replica. 이 옵션은 백업이 보조 복제본에서 실행될 때 지원되지 않는 차등 백업 만들기와 같은 백업 기능이 필요한 경우에 유용합니다.This option is useful if you need backup features, such as creating differential backups, that are not supported when backup is run on a secondary replica.

    중요

    로그 전달을 사용하여 가용성 그룹의 보조 데이터베이스를 준비하려는 경우 모든 보조 데이터베이스가 준비되고 가용성 그룹에 조인될 때까지 자동화된 백업 기본 설정을 로 설정합니다.If you plan to use log shipping to prepare any secondary databases for an availability group, set the automated backup preference to Primary until all the secondary databases have been prepared and joined to the availability group.

    SecondaryOnlySecondaryOnly
    백업이 주 복제본에서 수행되지 않도록 지정합니다.Specifies that backups should never be performed on the primary replica. 주 복제본이 유일한 온라인 복제본인 경우에는 백업이 수행되지 않아야 합니다.If the primary replica is the only replica online, the backup should not occur.

    보조Secondary
    백업이 보조 복제본에서 수행되도록 지정합니다. 주 복제본이 유일한 온라인 복제본인 경우는 예외로,Specifies that backups should occur on a secondary replica except when the primary replica is the only replica online. 이 경우에는 백업이 주 복제본에서 수행되어야 합니다.In that case, the backup should occur on the primary replica. 이것이 기본 동작입니다.This is the default behavior.

    없음None
    백업을 수행할 복제본을 선택할 때 백업 작업에서 가용성 복제본의 역할을 무시하도록 지정합니다.Specifies that you prefer that backup jobs ignore the role of the availability replicas when choosing the replica to perform backups. 백업 작업에서는 각 가용성 복제본의 작동 상태 및 연결 상태와 함께 백업 우선 순위 등의 기타 요인을 평가할 수 있습니다.Note backup jobs might evaluate other factors such as backup priority of each availability replica in combination with its operational state and connected state.

    중요

    AutomatedBackupPreference는 적용되지 않습니다.There is no enforcement of AutomatedBackupPreference. 이 기본 설정의 해석은 지정된 가용성 그룹의 데이터베이스에 대한 백업 작업으로 스크립팅하는 논리(있는 경우)에 따라 달라집니다.The interpretation of this preference depends on the logic, if any, that you script into backup jobs for the databases in a given availability group. 자동화된 백업 기본 설정은 임시 백업에는 영향을 미치지 않습니다.The automated backup preference setting has no impact on ad-hoc backups. 자세한 내용은 이 항목 뒷부분에 있는 후속 작업: 보조 복제본에 백업을 구성한 후 을 참조하세요.For more information, see Follow Up: After Configuring Backup on Secondary Replicas later in this topic.

    예를 들어 다음 명령은 가용성 그룹 AutomatedBackupPreference MyAg 속성을 SecondaryOnly로 설정합니다.For example, the following command sets the AutomatedBackupPreference property on the availability group MyAg to SecondaryOnly. 주 복제본에서는 이 가용성 그룹의 데이터베이스 자동 백업이 절대 발생하지 않으며 대신 백업 우선 순위 설정 값이 가장 높은 보조 복제본으로 백업이 리디렉션됩니다.Automated backups of databases in this availability group will never occur on the primary replica, but will be redirected to the secondary replica with the highest backup priority setting.

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

cmdlet의 구문을 보려면 PowerShell 환경에서 Get-Help SQL ServerSQL Server cmdlet을 사용합니다.To view the syntax of a cmdlet, use the Get-Help cmdlet in the SQL ServerSQL Server PowerShell environment. 자세한 내용은 Get Help SQL Server PowerShell을 참조하세요.For more information, see Get Help SQL Server PowerShell.

SQL Server PowerShell 공급자를 설정하고 사용하려면To set up and use the SQL Server PowerShell provider

후속 작업: 보조 복제본에 백업을 구성한 후 Follow Up: After Configuring Backup on Secondary Replicas

지정된 가용성 그룹에 대해 자동화된 백업 기본 설정을 고려하도록 하려면 백업 우선 순위가 0보다 큰(>0) 가용성 복제본을 호스팅하는 각 서버 인스턴스에서 가용성 그룹의 데이터베이스에 대한 백업 작업을 스크립팅해야 합니다.To take the automated backup preference into account for a given availability group, on each server instance that hosts an availability replica whose backup priority is greater than zero (>0), you need to script backup jobs for the databases in the availability group. 현재 복제본이 기본 백업 복제본인지 여부를 확인하려면 백업 스크립트에서 sys.fn_hadr_backup_is_preferred_replica 함수를 사용합니다.To determine whether the current replica is the preferred backup replica, use the sys.fn_hadr_backup_is_preferred_replica function in your backup script. 현재 서버 인스턴스가 호스팅하는 가용성 복제본이 백업에 대한 선호 복제본인 경우 이 함수가 1을 반환합니다.If the availability replica that is hosted by the current server instance is the preferred replica for backups, this function returns 1. 그렇지 않으면 함수가 0을 반환합니다.If not, the function returns 0. 각 가용성 복제본에서 이 함수를 쿼리하는 간단한 스크립트를 실행하여 지정된 백업 작업을 실행할 복제본을 확인할 수 있습니다.By running a simple script on each availability replica that queries this function, you can determine which replica should run a given backup job. 예를 들어 백업 작업 스크립트의 일반적인 코드 조각은 다음과 같습니다.For example, a typical snippet of a backup-job script would look like:

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;  

이 논리를 사용하여 백업 작업을 스크립팅하면 동일한 일정으로 모든 가용성 복제본에 대해 실행할 작업을 예약할 수 있습니다.Scripting a backup job with this logic enables you to schedule the job to run on every availability replica on the same schedule. 이러한 각 작업은 동일한 데이터를 조사하여 실행해야 하는 작업을 확인하므로 예약된 작업 중 하나만이 실제로 백업 단계로 진행됩니다.Each of these jobs looks at the same data to determine which job should run, so only one of the scheduled job actually proceeds to the backup stage. 장애 조치(Failover)의 경우 스크립트나 작업을 수정할 필요가 없습니다.In the event of a failover, none of the scripts or jobs needs to be modified. 가용성 복제본을 추가하도록 가용성 그룹을 다시 구성한 경우 백업 작업을 관리하려면 백업 작업을 복사하거나 예약하기만 하면 됩니다.Also, if you reconfigure an availability group to add an availability replica, managing the backup job requires simply copying or scheduling the backup job. 가용성 복제본을 제거한 경우 해당 복제본을 호스팅하는 서버 인스턴스에서 백업 작업을 삭제합니다.If you remove an availability replica, simply delete the backup job from the server instance that hosted that replica.

유지 관리 계획 마법사를 사용하여 지정된 백업 작업을 만드는 경우 해당 작업에는 sys.fn_hadr_backup_is_preferred_replica 함수를 호출하고 확인하는 스크립팅 논리가 자동으로 포함됩니다.If you use theMaintenance Plan Wizardto create a given backup job, the job will automatically include the scripting logic that calls and checks the sys.fn_hadr_backup_is_preferred_replica function. 그러나 백업 작업이 "기본 복제본이 아닙니다..." 메시지를 반환하지는However, the backup job will not return the “This is not the preferred replica…” 않습니다. 가용성 그룹의 가용성 복제본을 호스트하는 각 서버 인스턴스에서 각 가용성 데이터베이스에 대한 작업을 만들어야 합니다.message.Be sure to create the job(s) for each availability database on every server instance that hosts an availability replica for the availability group.

백업 기본 설정에 대한 정보를 가져오려면 To Obtain Information About Backup Preference Settings

다음은 보조 복제본에서의 백업과 관련된 정보를 가져오는 데 유용합니다.The following are useful for obtaining information that is relevant for backup on secondary.

보기View 정보Information 관련 열Relevant Columns
sys.fn_hadr_backup_is_preferred_replicasys.fn_hadr_backup_is_preferred_replica 현재 복제본이 기본 백업 복제본인지 여부Is the current replica the preferred backup replica? 이 오류에는 이 작업을 적용할 수 없습니다.Not applicable.
sys.availability_groupssys.availability_groups 자동화된 백업 기본 설정Automated backup preference automated_backup_preferenceautomated_backup_preference

automated_backup_preference_descautomated_backup_preference_desc
sys.availability_replicassys.availability_replicas 지정된 가용성 복제본의 백업 우선 순위Backup priority of a given availability replica backup_prioritybackup_priority
sys.dm_hadr_availability_replica_statessys.dm_hadr_availability_replica_states 복제본이 서버 인스턴스의 로컬 복제본인지 여부Is replica local to the server instance?

현재 역할Current role

작동 상태Operational state

연결 상태Connected state

가용성 복제본의 동기화 상태Synchronization health of an availability replica
is_localis_local

role, role_descrole, role_desc

operational_state, operational_state_descoperational_state, operational_state_desc

connected_state, connected_state_descconnected_state, connected_state_desc

synchronization_health, synchronization_health_descsynchronization_health, synchronization_health_desc

참고 항목See Also

Always On 가용성 그룹 개요(SQL Server) Overview of Always On Availability Groups (SQL Server)
활성 보조: 보조 복제본에 백업(Always On 가용성 그룹)Active Secondaries: Backup on Secondary Replicas (Always On Availability Groups)