다음을 통해 공유


Add-SqlAvailabilityDatabase

가용성 그룹에 주 데이터베이스를 추가하거나 보조 데이터베이스를 가용성 그룹에 조인합니다.

구문

ByPath (기본값)

Add-SqlAvailabilityDatabase
    [[-Path] <String[]>]
    -Database <String[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByObject

Add-SqlAvailabilityDatabase
    [-InputObject] <AvailabilityGroup[]>
    -Database <String[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Add-SqlAvailabilityDatabase cmdlet은 가용성 그룹에 주 데이터베이스를 추가하거나 보조 데이터베이스를 가용성 그룹에 조인합니다. InputObject 또는 Path 매개 변수는 가용성 그룹을 지정합니다. 데이터베이스는 하나의 가용성 그룹에만 속할 수 있습니다.

가용성 그룹에 데이터베이스를 추가하려면 주 복제본을 호스트하는 서버 인스턴스에서 이 cmdlet을 실행합니다. 하나 이상의 로컬 사용자 데이터베이스를 지정합니다.

보조 데이터베이스를 가용성 그룹에 조인하려면 보조 복제본을 호스트하는 서버 인스턴스에서 보조 데이터베이스를 수동으로 준비합니다. 그런 다음 보조 복제본을 호스트하는 서버 인스턴스에서 이 cmdlet을 실행합니다.

예제

예제 1: 가용성 그룹에 데이터베이스 추가

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"

이 명령은 데이터베이스 Database16을 가용성 그룹 MainAG에 추가합니다. 가용성 그룹의 주 서버 인스턴스에서 이 명령을 실행합니다. 이 명령은 데이터 동기화를 위해 보조 데이터베이스를 준비하지 않습니다.

예제 2: 가용성 그룹에 데이터베이스 조인

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"

이 명령은 Database16이라는 보조 데이터베이스를 보조 복제본을 호스팅하는 서버 인스턴스 중 하나의 가용성 그룹 MainAG에 조인합니다.

예제 3: 데이터베이스 추가 및 가용성 그룹에 보조 데이터베이스 조인

PS C:\> $DatabaseBackupFile = "\\share\backups\Database16.bak"
PS C:\> $LogBackupFile = "\\share\backups\Database16.trn"
PS C:\> $AGPrimaryPath = "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG"
PS C:\> $MyAGSecondaryPath = "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG"
PS C:\> Backup-SqlDatabase -Database "Database16" -BackupFile $DatabaseBackupFile -ServerInstance "PrimaryServer\InstanceName"
PS C:\> Backup-SqlDatabase -Database "Database16" -BackupFile $LogBackupFile -ServerInstance "PrimaryServer\InstanceName" -BackupAction Log
PS C:\> Restore-SqlDatabase -Database "Database16" -BackupFile $DatabaseBackupFile -ServerInstance "SecondaryServer\InstanceName" -NoRecovery
PS C:\> Restore-SqlDatabase -Database "Database16" -BackupFile $LogBackupFile -ServerInstance "SecondaryServer\InstanceName" -RestoreAction Log -NoRecovery
PS C:\> Add-SqlAvailabilityDatabase -Path $AGPrimaryPath -Database 'Database16'
PS C:\> Add-SqlAvailabilityDatabase -Path $AGSecondaryPath -Database "Database16"

다음은 가용성 그룹의 주 복제본을 호스트하는 서버 인스턴스의 데이터베이스에서 보조 데이터베이스를 준비하는 예제입니다. 가용성 그룹에 데이터베이스를 주 데이터베이스로 추가합니다. 마지막으로 보조 데이터베이스를 가용성 그룹에 조인합니다.

처음 네 명령은 예제의 뒷부분에서 사용할 수 있는 경로를 변수에 저장합니다. 명령은 $DatabaseBackupFile, $LogBackupFile, $AGPrimaryPath 및 $AGSecondaryPath 변수에 값을 할당합니다.

다섯 번째 명령은 주 서버에 있는 Database16이라는 데이터베이스를 $DatabaseBackupFile 위치에 백업합니다.

여섯 번째 명령은 주 서버의 Database16에 대한 로그 파일을 $LogBackupFile 위치로 백업합니다.

일곱 번째 명령은 보조 서버에서 Database16에 대한 데이터베이스 백업을 복원합니다.

여덟 번째 명령은 보조 서버에서 Database16에 대한 로그 파일을 복원합니다.

아홉 번째 명령은 주 서버의 가용성 그룹에 데이터베이스를 추가합니다.

최종 명령은 해당 복제본의 보조 데이터베이스를 가용성 그룹에 조인합니다. 둘 이상의 보조 복제본이 있는 경우 각 복제본에 대해 보조 데이터베이스를 복원하고 조인합니다.

예제 4: 가용성 그룹에 데이터베이스를 추가하는 스크립트 만들기

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16" -Script

이 명령은 데이터베이스 Database16을 가용성 그룹 MainAG에 추가하는 Transact-SQL 스크립트를 만듭니다.

매개 변수

-Confirm

cmdlet을 실행하기 전에 확인 메시지를 표시합니다.

매개 변수 속성

형식:SwitchParameter
Default value:False
와일드카드 지원:False
DontShow:False
별칭:cf(cf)

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Database

사용자 데이터베이스의 배열을 지정합니다. 이 cmdlet은 이 매개 변수가 지정하는 데이터베이스를 가용성 그룹에 추가하거나 조인합니다. 지정한 데이터베이스는 SQL Server의 로컬 인스턴스에 있어야 합니다.

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:True
파이프라인의 값:True
속성 이름별 파이프라인의 값:True
나머지 인수의 값:False

-InputObject

이 cmdlet이 데이터베이스를 추가하거나 조인하는 가용성 그룹을 AvailabilityGroup 개체로 지정합니다.

매개 변수 속성

형식:

AvailabilityGroup[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

ByObject
Position:2
필수:True
파이프라인의 값:True
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Path

이 cmdlet이 데이터베이스를 추가하거나 조인하는 가용성 그룹의 경로를 지정합니다. 이 매개 변수를 지정하지 않으면 이 cmdlet은 현재 작업 위치를 사용합니다.

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

ByPath
Position:2
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Script

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

매개 변수 속성

형식:SwitchParameter
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-WhatIf

cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.

매개 변수 속성

형식:SwitchParameter
Default value:False
와일드카드 지원:False
DontShow:False
별칭:위스콘신

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

CommonParameters

이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.

입력

Microsoft.SqlServer.Management.Smo.AvailabilityGroup