2010-04-23 120 views
2

我有一個SQL Server 2008,它是的一部分。現在我創建此服務器的數據庫的一個備份,並在不屬於域的SQL Server上恢復它。 我有一個C#應用程序,它使用此數據庫。在非域機現在我得到這樣的例外:恢復SQL Server備份的問題

「無法執行作爲數據庫prinzipal因爲principial‘DBO’不存在,這種類型的主體不能是impersonatedm或者你不沒有許可」

我認爲,問題是,該數據庫所有者域用戶和該用戶沒有在目標機(備份機)上存在!?我該如何解決這個問題?

回答

1

MS SQL服務器遵循2層用戶系統。 您必須確保您的登錄名是SQL Server(這指的是SQL Server本身不是到實際數據庫)的實際登錄名。

你會發現在Management Studio中下的SQL Server用戶: 服務器根目錄 - >安全 - 登錄

後您確保您的登錄,請你把它映射到用戶/模式。爲了待辦事項,所以你必須:

  1. 選擇SQL Server用戶要映射
  2. 用戶右擊
  3. 選擇性能
  4. 切換到用戶映射選項卡
  5. 選擇數據庫你想創建一個映射
  6. 選擇數據庫你想要關聯當前選擇的用戶SQL Server用戶
  7. 完成