Sql-Server

將數據庫使用者還原到 SQL Server 2008 上的伺服器登錄

  • December 22, 2013

我們有一個數據庫備份,我們需要在沒有數據庫登錄名的伺服器上恢復…雖然所有使用者都在數據庫中,所以我們希望我們可以通過這種方式恢復它?

我玩過 sp_change_users_login 但它只適用於創建新使用者或將孤立的數據庫使用者連結到現有伺服器使用者(SID 不匹配但使用者名相同)。

我需要從儲存在數據庫中的使用者資訊創建伺服器登錄。

如果您的目標是使用相同的密碼重新創建登錄名,那麼您就是 SOL,這僅儲存在主數據庫的表/視圖中。如果舊實例仍然存在,Brian 的建議將起作用,但如果沒有,那麼您將需要執行以下選項之一。

  • 重新創建登錄
  • 使用 sp_change_users_login 將數據庫使用者映射到新登錄名

要麼

  • 創建新的登錄
  • 在恢復的數據庫中為該登錄分配權限

請注意,這僅適用於 SQL 登錄,如果您使用的是 Active Directory 登錄,那麼您只需將它們添加回伺服器,它們將自動在恢復的數據庫中擁有權限,因為密碼和 SID 儲存在 AD 中而不是在實例的主數據庫中。

引用自:https://serverfault.com/questions/115299