共用方式為


設定資料庫鏡像或 AlwaysOn 可用性群組的登入帳戶 (SQL Server)

若要讓兩個伺服器執行個體連接到對方的資料庫鏡像端點,這兩個執行個體的登入帳戶都必須要有對方的存取權。 而且,這兩個登入帳戶都必須要有連接權限來連接到對方的資料庫鏡像端點。

此需求的影響視伺服器執行個體是否以相同網域使用者帳戶執行而定:

  • 如果伺服器執行個體是以相同的網域使用者帳戶執行,兩個 master 資料庫中都會自動存在正確的使用者登入。 這樣可簡化資料庫鏡像和 AlwaysOn 可用性群組的安全性組態。

  • 如果伺服器執行個體是以不同使用者帳戶執行,則裝載主體伺服器或主要複本的伺服器執行個體上的使用者登入必須以手動方式重新產生在裝載鏡像伺服器的伺服器執行個體或裝載次要複本的每個伺服器執行個體上。 如需詳細資訊,請參閱本主題稍後的<為不同的帳戶建立登入>和<授與連接權限>。

    安全性注意事項安全性注意事項

    若要建立更安全的環境,請考慮針對每個伺服器執行個體使用個別的網域帳戶。

為不同的帳戶建立登入

如果兩個伺服器執行個體是以不同的帳戶來執行,系統管理員就必須使用 CREATE LOGIN Transact-SQL 陳述式,在這兩個伺服器執行個體 master 資料庫的 syslogins 資料表中,針對遠端執行個體的啟動服務帳戶來建立登入。 如需詳細資訊,請參閱<CREATE LOGIN (Transact-SQL)>。

重要事項重要事項

如果您是在非網域帳戶之下執行 SQL Server,則必須使用憑證。 如需詳細資訊,請參閱<使用資料庫鏡像端點憑證 (Transact-SQL)>。

例如,若要讓伺服器執行個體 sqlA (在 loginA 之下執行) 連接到伺服器執行個體 sqlB (在 loginB 之下執行),則 loginA 必須在 sqlB 的 syslogins 資料表中,而 loginB 必須在 sqlA 的 syslogins 資料表中。 此外,若資料庫鏡像工作階段中包含見證伺服器執行個體 (sqlC),而且其中的三個伺服器執行個體都是在不同的網域帳戶下執行,則必須建立下列登入:

在執行個體

建立登入及授與連接權限給...

sqlA

sqlB 和 sqlC

sqlB

sqlA 和 sqlC

sqlC

sqlA 與 sqlB

[!附註]

您也可以利用電腦帳戶代替網域使用者,與網路服務帳戶連接。 如果使用電腦帳戶,則必須將該帳戶新增為其他個伺服器執行個體的使用者。

授與連接權限

一旦在伺服器執行個體上建立登入,就必須授權該登入來連接伺服器執行個體的資料庫鏡像端點。 系統管理員可使用 GRANT Transact-SQL 陳述式來授與連接權限。 如需詳細資訊,請參閱<GRANT (Transact-SQL)>。

相關工作

請參閱

概念

資料庫鏡像端點 (SQL Server)

疑難排解資料庫鏡像組態 (SQL Server)

疑難排解 AlwaysOn 可用性群組組態 (SQL Server)