Share via


New-SqlAvailabilityGroup

가용성 그룹을 만듭니다.

Syntax

New-SqlAvailabilityGroup
   -AvailabilityReplica <AvailabilityReplica[]>
   [-Database <String[]>]
   [-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
   [-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
   [-HealthCheckTimeout <Int32>]
   [-BasicAvailabilityGroup]
   [-DatabaseHealthTrigger]
   [-DtcSupportEnabled]
   [-Name] <String>
   [[-Path] <String>]
   [-Script]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-SqlAvailabilityGroup
   -AvailabilityReplica <AvailabilityReplica[]>
   [-Database <String[]>]
   [-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
   [-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
   [-HealthCheckTimeout <Int32>]
   [-BasicAvailabilityGroup]
   [-DatabaseHealthTrigger]
   [-DtcSupportEnabled]
   [-Name] <String>
   [-InputObject] <Server>
   [-Script]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

New-SqlAvailabilityGroup cmdlet은 AlwaysOn 가용성 그룹에 가용성 그룹을 만듭니다. InputObject 또는 Path 매개 변수는 초기 기본 복제본(replica) 호스트하는 서버를 지정합니다.

예제

예제 1: 가용성 그룹 만들기

PS C:\> $PrimaryServer = Get-Item "SQLSERVER:\SQL\PrimaryServer\Instance22"
PS C:\> $SecondaryServer = Get-Item "SQLSERVER:\SQL\SecondaryServer\Instance22"
PS C:\> $PrimaryReplica = New-SqlAvailabilityReplica -Name "PrimaryServer\Instance22" -EndpointUrl "TCP://PrimaryServer.domain:5022" -FailoverMode "Automatic" -AvailabilityMode "SynchronousCommit" -AsTemplate -Version ($PrimaryServer.Version)
PS C:\> $SecondaryReplica = New-SqlAvailabilityReplica -Name "SecondaryServer\Instance22" -EndpointUrl "TCP://SecondaryServer.domain:5022" -FailoverMode "Automatic" -AvailabilityMode "SynchronousCommit" -AsTemplate -Version ($SecondaryServer.Version) 
PS C:\> New-SqlAvailabilityGroup -InputObject $PrimaryServer -Name "MainAG" -AvailabilityReplica ($PrimaryReplica, $SecondaryReplica) -Database @("Database01","Database02")

첫 번째 명령은 주 서버에서 SQL Server instance 가져오고 $PrimaryServer 변수에 저장합니다.

두 번째 명령은 보조 서버에서 SQL Server instance 가져오고 $SecondaryServer 변수에 저장합니다.

세 번째 명령은 New-SqlAvailabilityReplica cmdlet을 사용하여 주 서버 instance 포함하는 복제본(replica) 만든 다음 $PrimaryReplica 변수에 저장합니다. 명령은 $PrimaryServer Version 속성을 사용하여 서버 instance 버전을 지정합니다.

네 번째 명령은 New-SqlAvailabilityReplica를 사용하여 보조 서버 instance 포함하는 복제본(replica) 만든 다음 $SecondaryReplica 변수에 저장합니다. 명령은 $SecondaryServer Version 속성을 사용하여 서버 instance 버전을 지정합니다.

최종 명령은 가용성 그룹을 만듭니다. 이름, 주 서버, 복제본 및 기타 정보를 지정합니다.

매개 변수

-AutomatedBackupPreference

가용성 그룹에 대한 자동화된 백업 기본 설정을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • 주. 백업이 항상 주 복제본에서 수행되도록 지정합니다. 이 옵션은 차등 백업과 같은 보조 복제본(replica) 백업을 실행할 때 사용할 수 없는 기능의 사용을 지원합니다.
  • SecondaryOnly. 백업이 주 복제본에서 수행되지 않도록 지정합니다. 기본 복제본(replica) 유일한 온라인 복제본(replica) 경우 백업이 발생하지 않습니다.
  • 보조. 주 복제본(replica) 유일한 온라인 복제본(replica) 아닌 한 보조 복제본에서 백업이 수행되도록 지정합니다. 그런 다음 백업이 주 복제본에서 발생합니다.
  • 없음 백업을 수행하는 복제본(replica) 결정할 때 기본 또는 보조 상태 고려되지 않도록 지정합니다. 대신 백업 우선 순위 및 온라인 상태 백업을 수행하는 복제본(replica) 결정합니다.
Type:AvailabilityGroupAutomatedBackupPreference
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AvailabilityReplica

이 cmdlet이 가용성 그룹에 포함하는 가용성 복제본의 배열을 지정합니다. AvailabilityReplica 개체를 가져오려면 New-SqlAvailabilityReplica cmdlet을 사용합니다. AsTemplate 매개 변수를 지정합니다.

Type:AvailabilityReplica[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-BasicAvailabilityGroup

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

cmdlet을 실행하기 전에 확인을 요청합니다.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Database

로컬 읽기/쓰기 사용자 데이터베이스의 배열을 지정합니다. 이러한 데이터베이스는 전체 복구 모델을 사용해야 하며 AUTO_CLOSE 사용하지 않아야 합니다. 이러한 데이터베이스는 다른 가용성 그룹에 속할 수 없으며 데이터베이스 미러링에 대해 구성할 수 없습니다. 이 매개 변수의 값을 지정해야 합니다.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseHealthTrigger

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DtcSupportEnabled

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FailureConditionLevel

가용성 그룹의 자동 장애 조치(failover) 동작을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • OnServerDown. SQL Server 서비스가 중지되면 장애 조치(failover) 또는 다시 시작합니다.
  • OnServerUnresponsive. 더 낮은 값의 조건이 충족되는 경우 장애 조치(failover) 또는 다시 시작합니다. 또한 SQL Server 서비스가 클러스터에 연결되고 HealthCheckTimeout 임계값이 초과된 경우 또는 현재 주 역할에 있는 가용성 복제본(replica) 실패 상태인 경우.
  • OnCriticalServerError. 더 낮은 값의 조건이 충족되는 경우 장애 조치(failover) 또는 다시 시작, 메모리 부족 상태, 심각한 쓰기 액세스 위반 또는 너무 많은 덤핑을 포함하는 내부 중요 서버 오류가 발생하는 경우.
  • OnModerateServerError. 더 낮은 값의 조건이 충족되는 경우 장애 조치(failover) 또는 다시 시작과 메모리 부족 상태의 영구를 포함하는 보통 서버 오류가 발생하는 경우.
  • OnAnyQualifiedFailureConditions. 더 낮은 값의 조건이 충족되는 경우 장애 조치(failover) 또는 다시 시작, 그리고 엔진 작업자 스레드 고갈 및 확인되지 않는 교착 상태가 감지된 경우를 포함하여 적격 오류 조건이 발생하는 경우.
Type:AvailabilityGroupFailureConditionLevel
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HealthCheckTimeout

AlwaysOn 가용성 그룹이 응답하지 않는 서버를 비정상으로 선언한 시간(밀리초)을 지정합니다.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

이 cmdlet에서 만드는 가용성 그룹의 기본 복제본(replica) 호스트하는 SQL Server instance 지정합니다.

Type:Server
Position:3
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

이 cmdlet에서 만드는 가용성 그룹의 이름을 지정합니다.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Path

이 cmdlet이 만드는 가용성 그룹의 초기 기본 복제본(replica) 호스트하는 SQL Server instance 경로를 지정합니다. 이 매개 변수를 지정하지 않으면 이 cmdlet은 현재 작업 위치를 사용합니다. 값을 지정하는 경우 경로가 현재 있어야 합니다.

Type:String
Position:3
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Script

이 cmdlet은 이 cmdlet이 수행하는 작업을 수행하는 Transact-SQL 스크립트를 반환한다는 것을 나타냅니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

cmdlet을 실행할 경우 발생하는 일을 표시합니다. cmdlet은 실행되지 않습니다.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

Microsoft.SqlServer.Management.Smo.Server

서버 instance 이 cmdlet에 전달할 수 있습니다.

출력

Microsoft.SqlServer.Management.Smo.AvailabilityGroup

이 cmdlet은 가용성 그룹을 반환합니다.