Sql-Server

將工作站從域移動到工作組後,無法訪問 SQL Server 2008 R2 Express 中的任何數據庫

  • October 16, 2021

我安裝了用於開發目的的 SQL Server 2008 R2 Express 的工作站已從域移出到 Windows 工作組。作為域的一部分,我使用了具有域管理員權限的帳戶“MyDomain\MyUserName”。現在,我以具有本地管理員權限的“MyComputerName\MyUserName”身份登錄我的電腦。

在 SQL Server 配置管理器中,我已將啟動“SQL Server (Express)”服務的帳戶從“MyDomain\MyUserName”更改為“MyComputerName\MyUserName”。

我可以在 SQL Server Management Studio 中連接實例(使用 Windows 身份驗證),並且可以在左側的對象資源管理器中看到所有數據庫。但是,一旦我嘗試在對象資源管理器中打開任何數據庫節點,我就會收到一條消息,指出無法訪問數據庫。除了“master”或“tempdb”等系統數據庫之外,我收到所有數據庫的此消息。

如果我嘗試在其中一個數據庫上執行任何查詢,我會收到“SQL Server Message 916”:

伺服器主體“MyComputerName\MyUserName”無法在目前安全上下文下訪問數據庫“MyDatabase”。

有什麼辦法可以再次訪問我的數據庫?

編輯

我還嘗試在 SSMS 中手動創建一個新數據庫,但它會引發錯誤:

數據庫“master”中的 CREATE DATABASE 權限被拒絕(Microsoft SQL Server,錯誤:262)

編輯 2

我忘了提到該工作站執行的是 Windows XP(Service Pack 3),並且工作站已從其中刪除的域是舊的 Windows NT 域——以防萬一這對於找出問題的原因很重要。

我以前也遇到過這種情況。如果您沒有 sa 密碼並且您不是 sysadmin 組的成員,那麼您只剩下一個選項,即在維護模式下啟動 SQL Server。這將允許您重置 sa 密碼並將自己添加到 sysadmin 伺服器角色。

這是一個連結,當我不得不這樣做時,我發現它很有用,因為它逐步描述了您需要做什麼。祝你好運!

<連結>

您用於執行 SQL Server 的服務帳戶(您在配置管理器中輸入的內容)也必須是 SQL Server 中 sysadmin 角色的成員。如果您尚未這樣做,請使用 sa 帳戶登錄並授予 Windows 服務帳戶 sysadmin 伺服器角色。

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