Share via


錯誤22002:RegCreateKeyEx()傳回錯誤5,存取被拒(Microsoft SQL-DMO ODBC SQL狀態: 42000)

錯誤22002:RegCreateKeyEx()傳回錯誤5,存取被拒(Microsoft SQL-DMO ODBC SQL狀態: 42000)

SQL Server 2000 

為了符合最低權限要求,通常會將SQL Server與SQL Agent啟動帳戶都改為Local Windows User account,後來再去Enterprise Manager config一些組態設定卻出現此錯誤訊息,回家重新再翻了一下MCSE Training Kit - SQL Server 2000 System Administrator 猜想可能是機碼權限問題,果然解決了,提供給大家參考參考

[狀況]
當設定SQL Server啟動帳戶改為一般local user account或domain user account之後,
再到Enterprise Manager設定SQL Server屬性(組態),將SQL Server或SQL Server
Agent 勾選[自動啟動]就會出現此錯誤訊息

[原因]
使用Enterprise Manager修改SQL Server啟動帳戶,雖然可以將啟動帳戶自動賦予應有的權限,但登錄檔仍須做一些權限修改才能排除此錯誤訊息

[解法]
1.啟動登錄檔編輯器
2.修改前先備份登錄檔
3.找到以下位置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLServer
若是具名個體
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQL$InstanceName

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLSERVERAGENT
若是具名個體
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLAgent$InstanceName

4.在以上機碼右鍵,選擇[使用權限]加入一筆新設定SQL Server啟動帳戶,權限設定為[完全控制]
做完後直接在到Enterprise Manager勾選 自動啟動SQL Server,應該就不會再出現錯誤訊息了