这几天比较忧闷,在一台比较老的win2003机器上安装sql2008一直出“MOF语法错误”安装失败,浪费了我几天的时间才搞定。
现把经历写出来以帮他人可以少走歪路。
这台机器是一个平时当开发平台的机器,AMD X640四核,装有Vs2005 +Visio企业架构版+SQL Server 2000。操作系统是windows 2003,安装的时间有四五年了,是上次换CPU前装的。这套系统平稳的工作了许多年了,硬件有硬件配件的更换,但软件一直没换。
最近有一个工程需要远程团队协作,准备在网络上部署一台TFS2010协作服务器先在这台老机器上部署测试一下.TFS2010需要SQL Server 2008 R2版支持,当然先装数据服务软件罗.参数配置一直没有问题,在安装进程50%左右时,跳出错误"MOF语法错误"安装失败,并提示下一次安装前得先删除.
一开始怀疑自己的软件系统较旧了,至安装失败。安装系统SP3 .NetFramework 4.0等,再试,错误依旧。
上网找资料,到微软网站上一看有可能是WMI产生的错误。是一个叫Windows Management Instrumentation的服务组件出问题了。
解决方法有三步
1、删除 系统文件夹下\system32\wbem\Repository下的所有文件,然后重启,让系统重建所需注册文件。试了,错误依旧。
2、用一组脚本重建WMI组件
这个网上有很多,不再重复,执行后重启再安装,错误依旧。
3、微软建议重装系统后再试,我不想重装系统。
既然知道是WMI错误,就到我的电脑-管理-服务和应用程序-WMI控制上右键查看属性,发现里面提示有二个类别找不到文件。既然是找不到文件,把文件拷上不用行了,因为少二个文件就重装系统,还得重装一大堆软件,太麻烦了。
其他机器上找到一个WMI工作正常的2003,把system32下wbem的整个目录替换到这台旧系统上,并且删除\Repository目录下的文件后重启让它用新的文件重建WMI注册,重启后再试,就成功了。
官网给出的只是官方的解决方法,民间的土法有时比官网的好使