New-SqlAvailabilityGroup
语法
ByPath (默认值)
New-SqlAvailabilityGroup
[-Name] <String>
[[-Path] <String>]
-AvailabilityReplica <AvailabilityReplica[]>
[-Database <String[]>]
[-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
[-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
[-HealthCheckTimeout <Int32>]
[-BasicAvailabilityGroup]
[-DatabaseHealthTrigger]
[-DtcSupportEnabled]
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
New-SqlAvailabilityGroup
[-Name] <String>
[-InputObject] <Server>
-AvailabilityReplica <AvailabilityReplica[]>
[-Database <String[]>]
[-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
[-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
[-HealthCheckTimeout <Int32>]
[-BasicAvailabilityGroup]
[-DatabaseHealthTrigger]
[-DtcSupportEnabled]
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
New-SqlAvailabilityGroup cmdlet 在 AlwaysOn 可用性组中创建可用性组。
InputObject 或 Path 参数指定承载初始主副本的服务器。
示例
示例 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 实例,然后将其存储在$PrimaryServer变量中。
第二个命令获取辅助服务器上的 SQL Server 实例,然后将其存储在$SecondaryServer变量中。
第三个命令使用 New-SqlAvailabilityReplica cmdlet 创建包含主服务器实例的副本,然后将其存储在$PrimaryReplica变量中。
该命令使用 $PrimaryServer 的 Version 属性指定服务器实例的版本。
第四个命令使用 New-SqlAvailabilityReplica 创建包含辅助服务器实例的副本,然后将其存储在$SecondaryReplica变量中。
该命令使用 $SecondaryServer 的 Version 属性指定服务器实例的版本。
最后一个命令创建可用性组。
它指定名称、主服务器、副本和其他信息。
参数
-AutomatedBackupPreference
指定可用性组的自动备份首选项。
此参数的可接受值为:
- 主要。
指定备份始终发生在主副本上。
此选项支持在次要副本(例如差异备份)上运行备份时不可用的功能。
- SecondaryOnly。
指定从不对主要副本执行备份。
如果主副本是唯一联机副本,则不会进行备份。
- 二 次。
指定次要副本上发生备份,除非主副本是联机唯一的副本。
然后,备份发生在主副本上。
- 没有。
指定在确定哪个副本执行备份时,不会考虑主要状态或辅助状态。
相反,备份优先级和联机状态决定了哪个副本执行备份。
参数属性
| 类型: | AvailabilityGroupAutomatedBackupPreference
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-AvailabilityReplica
指定此 cmdlet 包含在可用性组中的可用性副本数组。
若要获取 AvailabilityReplica 对象,请使用 New-SqlAvailabilityReplica cmdlet。
指定 AsTemplate 参数。
参数属性
| 类型: | AvailabilityReplica[]
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-BasicAvailabilityGroup
New-SqlAvailabilityGroup cmdlet 在 AlwaysOn 可用性组中创建可用性组。
InputObject 或 Path 参数指定承载初始主副本的服务器。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Confirm
在运行 cmdlet 之前,提示你进行确认。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | cf |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Database
指定本地读/写用户数据库的数组。
这些数据库必须使用完整恢复模式,并且不得使用AUTO_CLOSE。
这些数据库不能属于另一个可用性组,并且无法为数据库镜像配置。
必须为此参数指定值。
参数属性
| 类型: | String[]
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-DatabaseHealthTrigger
New-SqlAvailabilityGroup cmdlet 在 AlwaysOn 可用性组中创建可用性组。
InputObject 或 Path 参数指定承载初始主副本的服务器。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-DtcSupportEnabled
New-SqlAvailabilityGroup cmdlet 在 AlwaysOn 可用性组中创建可用性组。
InputObject 或 Path 参数指定承载初始主副本的服务器。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-FailureConditionLevel
指定可用性组的自动故障转移行为。
此参数的可接受值为:
- OnServerDown。
如果 SQL Server 服务停止,则故障转移或重启。
- OnServerUnresponsive。
如果满足任何较低值条件,以及 SQL Server 服务连接到群集且超过 HealthCheckTimeout 阈值,或者当前处于主角色的可用性副本处于失败状态,则故障转移或重启。
- OnCriticalServerError。
如果满足任何较低值的条件,以及发生内部关键服务器错误(包括内存不足、严重写入访问冲突或转储过多)时,故障转移或重启。
- OnModerateServerError。
如果满足任何较低值条件,以及发生中等服务器错误(包括内存不足状态),则故障转移或重启。
- OnAnyQualifiedFailureConditions。
如果满足任何较低值的条件,以及发生符合条件的故障条件,则故障转移或重启,其中包括检测到引擎工作线程耗尽和无法解决的死锁。
参数属性
| 类型: | AvailabilityGroupFailureConditionLevel
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-HealthCheckTimeout
指定一段时间(以毫秒为单位),之后 AlwaysOn 可用性组将无响应服务器声明为不正常。
参数属性
| 类型: | Int32
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
指定承载此 cmdlet 创建的可用性组的主要副本的 SQL Server 实例。
| 类型: | Server
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
ByObject
| Position: | 3 |
| 必需: | True |
| 来自管道的值: | True |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Name
指定此 cmdlet 创建的可用性组的名称。
参数属性
| 类型: | String
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | 2 |
| 必需: | True |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Path
指定承载此 cmdlet 创建的可用性组的初始主副本的 SQL Server 实例的路径。
如果未指定此参数,此 cmdlet 将使用当前工作位置。
如果指定值,则路径当前必须存在。
参数属性
| 类型: | String
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
ByPath
| Position: | 3 |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-Script
指示此 cmdlet 返回执行此 cmdlet 执行的任务的 Transact-SQL 脚本。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-WhatIf
显示 cmdlet 运行时会发生什么情况。
命令脚本未运行。
参数属性
| 类型: | SwitchParameter
|
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | 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.Server
输出
Microsoft.SqlServer.Management.Smo.AvailabilityGroup