Sql-Server

登錄未跨可用性組同步

  • March 7, 2021

我們在 AlwaysOn 組中有 2 台伺服器。

雖然每個同步數據庫中的使用者帳戶都存在於兩台伺服器上,但數據庫實例級登錄僅存在於其中一台伺服器上。即 DBINSTANCE->Security->Logins 在一台伺服器上失去。

因此,當發生故障轉移時,我會在第二台伺服器(沒有相應的實例級別登錄)上登錄失敗。

我該如何克服這個問題?我應該以特殊方式設置使用者帳戶嗎?

您必須使用包含的數據庫,或者必須在其他伺服器上使用相同的密碼雜湊和 SID 重新創建使用者。

Microsoft 提供了執行此操作的腳本: How to transfer logins and passwords between SQL Server instances

Mark 的解決方案部分正確,但他推薦的解決方案是針對鏡像數據庫,而不是問題所要求的 AlwaysOn。

我的理解是,如果您不使用Contained Databases,則必須確保在其他實例上手動創建登錄。

類似於SQLSoldier的腳本(最初發佈在將登錄名轉移到數據庫鏡像一文中)應該可以解決問題。

引用自:https://dba.stackexchange.com/questions/29903