【 tulaoshi.com - Web开发 】
昨天在安装SQL 2005 RTM的时候碰到了这样一个错误:
Microsoft SQL Server 2005 Setup
------------------------------
The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine XXXX Error:2147749896 (0x80041008).
For help, click: http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft+SQL+Server&ProdVer=9.00.1399.06&EvtSrc=setup.rll&EvtID=70342
------------------------------
BUTTONS:
OK
------------------------------
之前安装了N次都没有碰到,而机器也是干净的,新安装的英文Windows Server 2003 with lastest Patchs。错误信息里面的Link也没有提供任何可利用的信息。
从错误信息来看好像是WMI损坏了,于是Google一下,发现有一个解决方法:Re-installing WMI ,里面提到是因为更新2K3最新补丁造成的这个错误:The cause of this error is a corrupt install of WMI, caused by upgrading Windows Server 2003 to SP1 build 1277,虽然他针对的是CTP版本。但是发现根本不能运行。
我的2K3是SP1 build 1447,仍然出现这个错误。
幸运的是终于找到了一个Fix WMI的Script脚本,运行之后就好了:
FIXWMI.CMD
------------------------
@echo on
cd /d c:temp
if not exist %windir%system32wbem goto TryInstall
cd /d %windir%system32wbem
net stop winmgmt
winmgmt /kill
if exist Rep_bak rd Rep_bak /s /q
rename Repository Rep_bak
for %%i in (*.dll) do RegSvr32 -s %%i
for %%i in (*.exe) do call :FixSrv %%i
for %%i in (*.mof,*.mfl) do Mofcomp %%i
net start winmgmt
goto End
:FixSrv
if /I (%1) == (wbemcntl.exe) goto SkipSrv
if /I (%1) == (wbemtest.exe) goto SkipSrv
if /I (%1) == (mofcomp.exe) goto SkipSrv
%1 /RegServer
:SkipSrv
goto End
:TryInstall
if not exist wmicore.exe goto End
wmicore /s
net start winmgmt
:End
如果你碰巧也遇到了这个问题,不妨看看能否解决?