Sql-Server
如何還原數據庫,以便可以在沒有安全管理員角色的伺服器上使用它
在 SQL 2008 實例上,我使用 dbcreator 和公共角色登錄。當我將數據庫還原到此伺服器上時,我無法使用該數據庫,因為其中的所有使用者-> 登錄映射都已損壞(不同伺服器上的 ID 不同)。
有一個 sp_change_users_login ‘Auto_Fix’, userName 儲存過程,但我不能使用它,因為我一開始就無法訪問數據庫。最後,由於我沒有 securityAdmin 角色,我無法將任何登錄名映射到數據庫使用者。
作為恢復過程的一部分,有沒有辦法讓自己訪問數據庫?
授權管理員可以編寫修復映射的幫助程序。然後它可以對過程進行簽名,並通過程式碼簽名為過程提供必要的授權(請參閱簽署儲存過程)。然後它可以授予您對此幫助程序的執行權限,並且您將能夠在沒有 securityAdmin 權限的情況下執行操作(修復損壞的登錄)。
不,對不起。
“securityAdmin”處於伺服器級別,與任何數據庫權限無關
注意(僅供參考,還沒有多大用處!)這是針對具有“包含數據庫”的 SQL Server 2011(又名 Denali)修復的