共用方式為


Set-SqlAvailabilityReplica

設定可用性復本上的設定。

語法

Set-SqlAvailabilityReplica
   [-AvailabilityMode <AvailabilityReplicaAvailabilityMode>]
   [-FailoverMode <AvailabilityReplicaFailoverMode>]
   [-EndpointUrl <String>]
   [-SessionTimeout <Int32>]
   [-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
   [-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
   [-BackupPriority <Int32>]
   [-ReadOnlyRoutingList <String[]>]
   [-ReadonlyRoutingConnectionUrl <String>]
   [[-Path] <String>]
   [-Script]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-SqlAvailabilityReplica
   [-AvailabilityMode <AvailabilityReplicaAvailabilityMode>]
   [-FailoverMode <AvailabilityReplicaFailoverMode>]
   [-EndpointUrl <String>]
   [-SessionTimeout <Int32>]
   [-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
   [-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
   [-BackupPriority <Int32>]
   [-ReadOnlyRoutingList <String[]>]
   [-ReadonlyRoutingConnectionUrl <String>]
   [-InputObject] <AvailabilityReplica>
   [-Script]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Set-SqlAvailabilityReplica Cmdlet 會設定或修改可用性複本的各種屬性。 在裝載主要複本的伺服器實例上執行此 Cmdlet。

範例

範例 1:修改複本可用性模式和自動故障轉移

PS C:\> Set-SqlAvailabilityReplica -AvailabilityMode "SynchronousCommit" -FailoverMode Automatic -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"

此命令會修改名為 MainAG 的可用性群組中名為 Replica02 的複本,以使用同步認可可用性模式並支援自動故障轉移。

範例 2:修改複本以支持強制手動故障轉移

PS C:\> Set-SqlAvailabilityReplica -AvailabilityMode AsynchronousCommit -FailoverMode Manual -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"

此命令會修改名為 MainAG 的可用性群組中名為 Replica02 的複本,以使用異步認可可用性模式,並且僅支持強制手動故障轉移,這可能會導致數據遺失。

範例 3:允許次要角色中的所有連線

PS C:\> Set-SqlAvailabilityReplica -ConnectionModeInSecondaryRole AllowAllConnections -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"

此命令會修改可用性群組 MainAG 中的複本 'Replica02',以允許次要角色中的所有連線。 這可讓您將唯讀數據處理工作負載卸除至次要複本。

範例 4:設定主要複本和次要複本以進行唯讀路由

PS C:\> Set-Location "SQLSERVER:\SQL\PrimaryServer\default\AvailabilityGroups\MainAG"
C:\PS> $PrimaryReplica = Get-Item "AvailabilityReplicas\PrimaryServer"
C:\PS> $SecondaryReplica = Get-Item "AvailabilityReplicas\SecondaryServer"
C:\PS> Set-SqlAvailabilityReplica -ReadOnlyRoutingConnectionUrl "TCP://PrimaryServer.domain.com:5022" -InputObject $PrimaryReplica
C:\PS> Set-SqlAvailabilityReplica -ReadOnlyRoutingConnectionUrl "TCP://SecondaryServer.domain.com:5022" -InputObject $SecondaryReplica
C:\PS> Set-SqlAvailabilityReplica -ReadOnlyRoutingList "SecondaryServer","PrimaryServer" -InputObject $PrimaryReplica

第一個命令會將位置變更為 SQLSERVER: 提供者中的位置。

第二個命令會取得主伺服器的複本,然後將它儲存在$PrimaryReplica變數中。

第三個命令會取得輔助伺服器的複本,然後將它儲存在$SecondaryReplica變數中。

第四個命令會將唯讀路由URL指派給主要複本。 然後,它會設定主要複本的唯讀路由清單。

第五個命令會將唯讀路由URL指派給次要複本。

第六個命令會設定主要複本上的唯讀路由清單。 具有 ReadOnly 屬性 Connections 連接字串 會重新導向至次要複本。 如果無法讀取次要複本,則會將聯機導向回主要複本。

範例 5:修改備份優先順序

PS C:\> Set-SqlAvailabilityReplica -BackupPriority 60 -Path "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"

此命令會將可用性復本 『Replica02』的備份優先順序設定為 60。 裝載主要複本的伺服器實例會使用此優先順序來決定哪些複本應該在可用性群組中的資料庫上服務自動備份要求。 系統會選擇具有最高優先順序的複本。

參數

-AvailabilityMode

指定複本可用性模式。 此參數可接受的值為:

  • SynchronousCommit
  • SyncCommit

您可以指定值$Null。

類型:AvailabilityReplicaAvailabilityMode
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-BackupPriority

指定執行備份中複本所需的優先順序。 此參數可接受的值為:從 0 到 100 的整數。 在在線和可用的複本集合中,具有最高優先順序的複本會執行備份。

值為零 (0) 表示複本不是候選複本。

類型:Int32
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Confirm

在執行 Cmdlet 前提示您確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-ConnectionModeInPrimaryRole

指定可用性複本在主要角色中處理連線的方式。 此參數可接受的值為:

  • AllowReadWriteConnections。 允許讀取/寫入連線。
  • AllowAllConnections。 允許所有連線。
類型:AvailabilityReplicaConnectionModeInPrimaryRole
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ConnectionModeInSecondaryRole

指定可用性複本在次要角色中處理連線的方式。 此參數可接受的值為:

  • AllowNoConnections。 不允許連線。
  • AllowReadIntentConnectionsOnly。 只允許讀取意圖連線。
  • AllowAllConnections。 允許所有連線。
類型:AvailabilityReplicaConnectionModeInSecondaryRole
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-EndpointUrl

指定資料庫鏡像端點的 URL。 此網址是下列形式的 TCP 位址:

TCP://system-address:連接埠

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-FailoverMode

指定故障轉移模式。 此參數可接受的值為:

  • 自動
  • 手動。 您可以指定值$Null。
類型:AvailabilityReplicaFailoverMode
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-InputObject

將可用性群組指定為複本所屬 的可用性群組 物件。

類型:AvailabilityReplica
Position:2
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Path

指定複本所屬可用性群組的路徑。 如果您未指定此參數,此 Cmdlet 會使用目前的工作位置。

類型:String
Position:2
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ReadonlyRoutingConnectionUrl

指定路由至複本以進行只讀連線時,FQDN) 和埠的完整 (功能變數名稱,如下列範例所示:

TCP://DBSERVER8.manufacturing.Contoso.com:7024

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ReadOnlyRoutingList

指定複本伺服器名稱的已排序列表,代表透過這個可用性複本重新導向唯讀連線時要使用的連接 Director 探查序列。 如果可用性複本是可用性群組目前的主要複本,則此參數適用。

類型:String[]
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Script

指出此 Cmdlet 會傳回 Transact-SQL 腳本,以執行此 Cmdlet 執行的工作。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-SessionTimeout

指定在連線失敗之前,在主要複本與此複本之間等候回應的時間量,以秒為單位。

類型:Int32
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

Microsoft.SqlServer.Management.Smo.AvailabilityReplica