SQL使用中遇到了难题

无法装载DLL Microsoft原因: 126(找不到指定的模块。

 
U890帐套引入提示:“无法装载 DLL Microsoft提示您请误随意操作SQL数据库 以免对起  数据库造成不必要的麻烦 或该 DLL 所引用的某一 DLL。原因: 126(找不到指定的模块。)。”


由于SQL2000的SA密码过于简单导致,被病毒恶意修改系统存储过程。
需要以下系统存储过程恢复。
注意:该方案只支持SQL2000

use master

go

-- 检查 xp_cmdshell 是否被篡改

select * from master..syscomments where object_name(id)='xp_cmdshell' and text<>'xplog70.dll'

go

-- 检查其他存储过程是否被篡改

select object_name(id), * from master..syscomments where object_name(id) in


('xp_getfiledetails','xp_availablemedia','xp_dirtree','xp_fixeddrives','xp_s
ubdirs',
'xp_fileexist','xp_get_tape_devices','sp_MSgetversion','xp_enumdsn','xp_regr
ead','xp_regwrite','xp_regdeletevalue',
'xp_regaddmultistring','xp_regremovemultistring','xp_regenumkeys','xp_regenu
mvalues','xp_regdeletekey','xp_instance_regread',
'xp_instance_regwrite','xp_instance_regdeletevalue','xp_instance_regaddmulti
string','xp_instance_regremovemultistring',
'xp_instance_regenumkeys','xp_instance_regenumvalues') and text <>N'xpstar.dll'
go
-- 发现 xp_cmdshell 被篡改,执行下面语句改回来
--drop procedure xp_cmdshell
--go
--exec sp_addextendedproc N'xp_cmdshell', N'xplog70.dll'
--go
-- 然后执行下面语句验证 xp_cmdshell 是否正确
--xp_cmdshell 'dir c:\'
-- 如果该语句异常,还有可能 sql server 服务的启用账户(一般情况下是 system )没有
访问 system32\cmd.exe 文件的权限,加上权限即可


-- 发现其他存储过程被篡改,执行下面语句
--drop procedure 存储过程名称
--go
--exec sp_addextendedproc N' 存储过程名称 ', N'xpstar.dll'
 
最后编辑

你可能感兴趣的:(sql,Microsoft,装载,原因,SQL数据库)