다음을 통해 공유


AlwaysOn 가용성 그룹 사용 및 사용 안 함(SQL Server)

Always On 가용성 그룹을 사용하도록 설정하는 것은 서버 인스턴스가 가용성 그룹을 사용하기 위한 필수 구성 요소입니다. 가용성 그룹을 만들고 구성하려면 먼저 하나 이상의 가용성 그룹에 대한 가용성 복제본을 호스팅할 SQL Server의 각 인스턴스에서 Always On 가용성 그룹 기능을 사용하도록 설정해야 합니다.

Important

WSFC 클러스터를 삭제하고 다시 만드는 경우 원래 WSFC 클러스터에서 가용성 복제본을 호스팅한 SQL Server의 각 인스턴스에서 Always On 가용성 그룹 기능을 사용하지 않도록 설정하고 다시 사용하도록 설정해야 합니다.

시작하기 전에

AlwaysOn 가용성 그룹 사용을 위한 사전 요구 사항

  • 서버 인스턴스는 WSFC(Windows Server 장애 조치(failover) 클러스터링) 노드에 있어야 합니다.

  • 서버 인스턴스는 Always On 가용성 그룹을 지원하는 SQL Server 버전을 실행해야 합니다. 자세한 내용은 SQL Server 2014 버전에서 지원하는 기능을 참조하세요.

  • 한 번에 하나의 서버 인스턴스에서만 AlwaysOn 가용성 그룹을 사용하도록 설정합니다. AlwaysOn 가용성 그룹을 사용하도록 설정한 후 SQL Server 서비스가 다시 시작될 때까지 기다린 후 다른 서버 인스턴스로 진행합니다.

가용성 그룹을 만들고 구성하기 위한 추가 필수 구성 요소에 대한 자세한 내용은 AlwaysOn 가용성 그룹(SQL Server)에 대한 필수 구성 요소, 제한 사항 및 권장 사항을 참조하세요.

보안

SQL Server 인스턴스에서 AlwaysOn 가용성 그룹을 사용하도록 설정하지만 서버 인스턴스는 WSFC 클러스터에서 모든 권한을 가집니다.

사용 권한

로컬 컴퓨터 관리자 그룹의 멤버 자격과 WSFC 클러스터에 대한 모든 권한이 필요합니다. PowerShell을 사용하여 AlwaysOn을 사용하도록 설정하는 경우 관리자 권한으로 실행 옵션을 사용하여 명령 프롬프트 창을 엽니다.

Active Directory 개체 만들기 및 개체 관리 권한이 필요합니다.

AlwaysOn 가용성 그룹을 사용할 수 있는지 확인

SQL Server Management Studio 사용

AlwaysOn 가용성 그룹을 사용할 수 있는지 여부를 확인하려면

  1. 개체 탐색기에서 서버 인스턴스를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.

  2. 서버 속성 대화 상자에서 일반 페이지를 클릭합니다. HADR 사용 속성이 다음 값 중 하나로 표시됩니다.

    • True, AlwaysOn 가용성 그룹을 사용하는 경우

    • False, AlwaysOn 가용성 그룹을 사용할 수 없는 경우

Transact-SQL 사용

AlwaysOn 가용성 그룹을 사용할 수 있는지 여부를 확인하려면

  1. 다음 SERVERPROPERTY 문을 사용합니다.

    SELECT SERVERPROPERTY ('IsHadrEnabled');  
    

    서버 속성의 IsHadrEnabled 설정은 다음과 같이 AlwaysOn 가용성 그룹에 대해 SQL Server 인스턴스를 사용할 수 있는지 여부를 나타냅니다.

    • IsHadrEnabled = 1인 경우 AlwaysOn 가용성 그룹을 사용할 수 있습니다.

    • IsHadrEnabled = 0인 경우 AlwaysOn 가용성 그룹을 사용할 수 없습니다.

    참고 항목

    서버 속성에 IsHadrEnabled 대한 자세한 내용은 SERVERPROPERTY(Transact-SQL)를 참조하세요.

PowerShell 사용

AlwaysOn 가용성 그룹을 사용할 수 있는지 여부를 확인하려면

  1. Always On 가용성 그룹을 사용할 수 있는지 여부를 확인하려는 서버 인스턴스(예: \SQL\NODE1\DEFAULT)로 기본값(cd)을 설정합니다.

  2. 다음 PowerShell Get-Item 명령을 입력합니다.

    Get-Item . | Select IsHadrEnabled  
    

    참고 항목

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

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

AlwaysOn 가용성 그룹 사용

AlwaysOn을 사용하도록 설정하려면 다음을 사용하세요.

SQL Server 구성 관리자 사용

AlwaysOn 가용성 그룹을 사용하도록 설정하려면

  1. AlwaysOn 가용성 그룹을 사용하도록 설정하려는 SQL Server 인스턴스를 호스트하는 WSFC(Windows Server 장애 조치(failover) 클러스터링) 노드에 연결합니다.

  2. 시작 메뉴에서 모든 프로그램을 가리키고, Microsoft SQL Server 2014를 가리키고, 구성 도구를 가리킨 다음, SQL Server 구성 관리자 클릭합니다.

  3. SQL Server 구성 관리자 SQL Server 서비스를 클릭하고 SQL Server(><instance name)를 마우스 오른쪽 단추로 클릭합니다. 여기서 <instance name> AlwaysOn 가용성 그룹을 사용하도록 설정할 로컬 서버 인스턴스의 이름이 있는 경우 속성을 클릭합니다.

  4. AlwaysOn 고가 용성 탭을 선택합니다.

  5. Windows 장애 조치(failover) 클스터 이름 필드에 로컬 장애 조치(failover) 클러스터의 이름이 포함되어 있는지 확인합니다. 이 필드가 비어 있으면 이 서버 인스턴스는 현재 Always On 가용성 그룹을 지원하지 않습니다. 로컬 컴퓨터가 클러스터 노드가 아니거나 WSFC 클러스터가 종료되었거나 Always On 가용성 그룹을 지원하지 않는 이 버전의 SQL Server 2014입니다.

  6. AlwaysOn 가용성 그룹 사용 확인란을 선택하고 확인을 클릭합니다.

    SQL Server 구성 관리자가 변경 내용을 저장합니다. 그런 다음 SQL Server 서비스를 수동으로 다시 시작해야 합니다. 이렇게 하면 비즈니스 요구 사항에 가장 적합한 다시 시작 시간을 선택할 수 있습니다. SQL Server 서비스가 다시 시작되면 AlwaysOn이 활성화되고 IsHadrEnabled 서버 속성이 1로 설정됩니다.

SQL Server PowerShell 사용

AlwaysOn을 사용하도록 설정하려면

  1. 디렉터리(cd)를 AlwaysOn 가용성 그룹에 사용하도록 설정하려는 서버 인스턴스로 변경합니다.

  2. Enable-SqlAlwaysOn cmdlet을 사용하여 AlwaysOn 가용성 그룹을 사용하도록 설정합니다.

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

    참고 항목

    cmdlet이 SQL Server 서비스를 다시 시작할지 여부를 Enable-SqlAlwaysOn 제어하는 방법에 대한 자세한 내용은 이 항목의 뒷부분에 있는 Cmdlet이 SQL Server 서비스를 다시 시작하는 경우를 참조하세요.

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

예: Enable-SqlAlways On

다음 PowerShell 명령을 사용하면 SQL Server(컴퓨터\인스턴스) 인스턴스에서 Always On 가용성 그룹을 사용할 수 있습니다.

Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance  

AlwaysOn 가용성 그룹을 사용하지 않도록 설정

Important

한 번에 하나의 서버에서만 AlwaysOn을 사용하지 않도록 설정해야 합니다. AlwaysOn 가용성 그룹을 사용하지 않도록 설정한 후 다른 서버 인스턴스로 진행하기 전에 SQL Server 서비스가 다시 시작될 때까지 기다립니다.

권장 사항

서버 인스턴스에서 AlwaysOn을 사용하지 않도록 설정하기 전에 다음을 수행하는 것이 좋습니다.

  1. 서버 인스턴스가 사용자가 보관하려는 가용성 그룹의 주 복제본을 호스팅 중인 경우 가능한 한 가용성 그룹을 동기화된 보조 복제본으로 수동으로 장애 조치(failover)하는 것이 좋습니다. 자세한 내용은 가용성 그룹의 계획된 수동 장애 조치(failover) 수행(SQL Server)을 참조하세요.

  2. 모든 로컬 보조 복제본을 제거합니다. 자세한 내용은 가용성 그룹에서 보조 복제본 제거(SQL Server)를 참조하세요.

SQL Server 구성 관리자 사용

AlwaysOn을 사용하지 않도록 설정하려면

  1. AlwaysOn 가용성 그룹을 사용하지 않도록 설정하려는 SQL Server 인스턴스를 호스트하는 WSFC(Windows Server 장애 조치(failover) 클러스터링) 노드에 연결합니다.

  2. 시작 메뉴에서 모든 프로그램을 가리키고, Microsoft SQL Server 2014를 가리키고, 구성 도구를 가리킨 다음, SQL Server 구성 관리자 클릭합니다.

  3. SQL Server 구성 관리자 SQL Server Services를 클릭하고 SQL Server(><instance name)를 마우스 오른쪽 단추로 클릭합니다. 여기서 <instance name> AlwaysOn 가용성 그룹을 사용하지 않도록 설정할 로컬 서버 인스턴스의 이름을 지정하고 속성을 클릭합니다.

  4. AlwaysOn 고가용성탭에서 AlwaysOn 가용성 그룹 사용 확인란의 선택을 취소하고 확인을 클릭합니다.

    SQL Server 구성 관리자가 변경 내용을 저장하고 SQL Server 서비스를 다시 시작합니다. SQL Server 서비스가 다시 시작되면 AlwaysOn이 비활성화되고 IsHadrEnabled 서버 속성이 0으로 설정되어 AlwaysOn 가용성 그룹을 사용할 수 없음을 나타냅니다.

  5. 후속 작업: AlwaysOn을 사용하지 않도록 설정한 후 이 항목의 뒷부분에 있는 정보를 읽는 것이 좋습니다.

SQL Server PowerShell 사용

AlwaysOn을 사용하지 않도록 설정하려면

  1. 디렉터리(cd)를 AlwaysOn 가용성 그룹에 대해 해제하려는 현재 사용 가능한 서버 인스턴스로 변경합니다.

  2. Disable-SqlAlwaysOn cmdlet을 사용하여 AlwaysOn 가용성 그룹을 사용하도록 설정합니다.

    예를 들어 다음 명령은 SQL Server(컴퓨터\인스턴스) 인스턴스에서 AlwaysOn 가용성 그룹을 사용하지 않도록 설정합니다. 이 명령을 사용할 경우 인스턴스를 다시 시작해야 하며, 다시 시작을 확인하는 메시지가 표시됩니다.

    Disable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance  
    

    Important

    cmdlet이 SQL Server 서비스를 다시 시작할지 여부를 Disable-SqlAlwaysOn 제어하는 방법에 대한 자세한 내용은 이 항목의 뒷부분에 있는 Cmdlet이 SQL Server 서비스를 다시 시작하는 경우를 참조하세요.

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

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

후속 작업: AlwaysOn을 사용하지 않도록 설정한 후

AlwaysOn 가용성 그룹을 사용하지 않도록 설정하면 SQL Server 인스턴스를 다시 시작해야 합니다. SQL 구성 관리자는 서버 인스턴스를 자동으로 다시 시작합니다. 그러나 cmdlet을 Disable-SqlAlwaysOn 사용한 경우 서버 인스턴스를 수동으로 다시 시작해야 합니다. 자세한 내용은 sqlservr Application을 참조하세요.

다시 시작된 서버 인스턴스에서 다음 작업을 수행합니다.

  • 가용성 데이터베이스는 SQL Server 시작 기능을 시작하지 않으므로 해당 시작 기능에 액세스할 수 없습니다.

  • 지원되는 AlwaysOn Transact-SQL 문은 DROP AVAILABILITY GROUP뿐입니다. ALTER DATABASE의 CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP 및 SET HADR 옵션은 지원되지 않습니다.

  • WSFC의 SQL Server 메타데이터 및 Always On 가용성 그룹 구성 데이터는 AlwaysOn 가용성 그룹을 사용하지 않도록 설정하여 영향을 받지 않습니다.

하나 이상의 가용성 그룹에 대해 가용성 복제본을 호스트하는 모든 서버 인스턴스에서 AlwaysOn 가용성 그룹을 영구적으로 사용하지 않도록 설정하는 경우 다음 단계를 완료하는 것이 좋습니다.

  1. AlwaysOn을 사용하지 않도록 설정하기 전에 로컬 가용성 복제본을 제거하지 않은 경우 서버 인스턴스가 가용성 복제본을 호스팅하는 각 가용성 그룹을 삭제(삭제)합니다. 가용성 그룹 삭제에 대한 자세한 내용은 가용성 그룹 제거(SQL Server)를 참조하세요.

  2. 남아 있는 메타데이터를 제거하려면 원래 WSFC 클러스터의 일부인 서버 인스턴스에서 영향을 받는 각 가용성 그룹을 삭제(삭제)합니다.

  3. 모든 주 데이터베이스가 계속해서 모든 연결에 액세스 가능하지만 주 데이터베이스와 보조 데이터베이스 간 데이터 동기화는 중지됩니다.

  4. 보조 데이터베이스가 RESTORING 상태가 됩니다. 이를 삭제하거나 RESTORE WITH RECOVERY를 사용하여 복원할 수 있습니다. 그러나 복원된 데이터베이스는 더 이상 가용성 그룹 데이터 동기화에 사용되지 않습니다.

Cmdlet이 SQL Server 서비스를 다시 시작하는 경우?

현재 실행 중인 서버 인스턴스에서 Enable-SqlAlwaysOn 또는 Disable-SqlAlwaysOn을 사용하여 현재 AlwaysOn 설정을 변경하면 SQL Server 서비스가 다시 시작될 수 있습니다. 다시 시작 동작은 다음 조건에 따라 달라집니다.

-NoServiceRestart 매개 변수 지정되었는지 여부 -Force 매개 변수가 지정되었는지 여부 SQL Server 서비스가 다시 시작되었는지 여부?
아니요 아니요 기본적으로. 그러나 cmdlet에서 다음과 같이 묻는 메시지가 표시됩니다:

이 작업을 완료하려면 ‘<instance_name>’ 서버 인스턴스에 대한 SQL Server 서비스를 다시 시작해야 합니다. 계속할까요?

[Y] 예 [N] 아니요 [S] 일시 중단 [?] 도움말(기본값 "Y"):

N 또는 S를 지정하면 서비스가 다시 시작되지 않습니다.
서비스가 다시 시작됩니다.
아니요 서비스가 다시 시작되지 않습니다.
서비스가 다시 시작되지 않습니다.

참고 항목

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