共用方式為


Join-SqlAvailabilityGroup

將本機次要復本聯結至可用性群組。

語法

Join-SqlAvailabilityGroup
    [-Name] <String>
    [[-Path] <String>]
    [-ClusterType <AvailabilityGroupClusterType>]
    [-Script]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-ProgressAction <ActionPreference>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Join-SqlAvailabilityGroup
    [-Name] <String>
    [-InputObject] <Server>
    [-ClusterType <AvailabilityGroupClusterType>]
    [-Script]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-ProgressAction <ActionPreference>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Join-SqlAvailabilityGroup Cmdlet 會將本機次要複本聯結至可用性群組。

在裝載未加入可用性群組之次要複本的 SQL Server 實例上執行此 Cmdlet。

範例

範例 1:將次要複本聯結至可用性群組

PS C:\> Join-SqlAvailabilityGroup -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName" -Name "MainAG"

此命令會將次要複本聯結至名為 『MainAG』 的可用性群組。 此伺服器實例必須裝載此可用性群組中的次要複本。

範例 2:建立將次要複本聯結至可用性群組的腳本

PS C:\> Join-SqlAvailabilityGroup -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName" -Name "MainAG" -Script

此命令會建立 Transact-SQL 腳本,將次要複本聯結至名為 『MainAG』 的可用性群組。

參數

-AccessToken

用來向 SQL Server 驗證的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。

例如,這可用來使用 Service PrincipalManaged Identity來連線到 SQL Azure DBSQL Azure Managed Instance

要使用的參數可以是字串,表示令牌或 PSAccessToken 物件,如執行 Get-AzAccessToken -ResourceUrl https://database.windows.net所傳回。

此參數是模組 v22 的新功能。

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

-ClusterType

備份 AG 的叢集類型。 可能的值為:

  • Wsfc。 AG 將會整合到 Windows Server 故障轉移叢集中。 這是 SQL Server 2016 和以下的 AG 建立方式。 這是預設值。
  • 沒有。 AG 將會與叢集無關。
  • 外部。 AG 將由不是 Windows Server 故障轉移叢集的叢集管理員管理,例如 Linux 上的 Pacemaker。 SQL Server 2017 和更新版本支援此功能。 在 Linux 上以 SQL Server 為目標時,您必須指定此值,否則會出現錯誤。
類型:AvailabilityGroupClusterType
接受的值:Wsfc, None, External
Position:Named
預設值:Wsfc
必要:False
接受管線輸入:False
接受萬用字元:False

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

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

-Encrypt

線上到 SQL Server 時要使用的加密類型。

此值會對應至 Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 Encrypt 屬性 SqlConnectionEncryptOption

在模組的 v22 中,預設值為 Optional (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 「強制」,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

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

-HostNameInCertificate

用來驗證 SQL Server TLS/SSL 憑證的主機名。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整功能變數名稱 (FQDN) 傳遞至 -ServerInstance 才能連線到啟用強制加密的 SQL Server 實例。

此參數是模組 v22 的新功能。

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

-InputObject

指定裝載此 Cmdlet 加入可用性群組之次要複本之 SQL Server 實例的伺服器。

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

-Name

指定這個 Cmdlet 聯結次要複本的可用性群組名稱。

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

-Path

指定裝載此 Cmdlet 加入可用性群組之次要複本之 SQL Server 實例的路徑。 如果您未指定此參數,此 Cmdlet 會使用目前的工作位置。

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

-ProgressAction

決定 PowerShell 如何回應腳本、Cmdlet 或提供者所產生的進度更新,例如 Write-Progress Cmdlet 所產生的進度列。 Write-Progress Cmdlet 會建立顯示命令狀態的進度列。

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

-Script

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

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

-TrustServerCertificate

指出通道是否會在略過憑證鏈結以驗證信任時加密。

在模組的 v22 中,預設值為 $true (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

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

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

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

輸入

Microsoft.SqlServer.Management.Smo.Server

您可以將伺服器實例傳遞至此 Cmdlet。

備註

必須在伺服器實例上啟用高可用性數據復原服務。 Path 參數所指定的可用性複本必須存在。