错误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,应该就不会再出现错误讯息了