安装Ms SQL Server 2005 开发版时出现性能计数器要求安装错误的解决办法

 现在,微软推出了 Sql Server 2005 简体中文版,不过大家基本上都是使用的 Sql Server 2005 的 Express 版,不过这个版本的管理界面并不好,所以我删除了这个版本,开始安装 Developer Edition 版。

不过,在安装开发版的时候,安装程序在检查系统需求的时候,出现了如下图的错误,信息:



查看安装帮助后,发现有这一段话:

1 在 Microsoft Windows 2003 或 Windows XP 桌面上,依次单击“开始”、“运行”,然后在“打开”中键入 regedit.exe,再单击“确定”。在 Windows 2000 中,使用 regedt32.exe 启动注册表编辑器。

2 定位到以下注册表项:

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Perflib]

"Last Counter"=dword:00000ed4 (5276)

"LastHelp"=dword:00000ed5 (5277)

3 上一步的“Last Counter”值 (5276) 必须与以下注册表项中“Perflib/009”的“Counter”项的最大值匹配,并且上一步的“Last Help”值 (5277) 必须与以下注册表项中“Perflib/009”的“Help”项的最大值匹配。

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Perflib/009]

注意 009 是英文中的一个示例。“Last Counter”和“Last Help”值是由 Windows 动态分配的;这两个值会因计算机的不同而不同。

4 如有必要,可修改“/Perflib”项中的“Last Counter”和“Last Help”值的值:在右侧窗格中,右键单击“Last Counter”或“Last Help”,单击“修改”,再单击“Base = "Decimal"”,在“值数据”中设置值,再单击“确定”。如有必要,对另一个项重复以上过程,然后关闭注册表编辑器。

5 再次运行 SQL Server 安装程序。

我完全按照以上叙述的步骤修改了注册表,可是始终出现这个问题。后来经过分析,发现原因有两个,即注册表值中的数字与实际数字不符合,还有就是根本不应该修改009这个注册表项中的值。因为我们使用的大多数是简体中文系统。所以修改方式如下:

首先打开 “控制面板” --> “管理工具” 后,双击 “性能”,显示出性能分析器界面,在右边的控制台节点中展开 “性能日志和警报”后,用鼠标选择 “性能计数器”。

然后双击右边窗口的 “System Overview”,显示 System Overview 属性窗口。



在窗口中的 “添加对象” 和 “添加计数器” 按钮分别单击一次,但单击后显示的窗口不要去动,直接选择取消。

分别单击两个按钮后,单击缺定关闭 System Overview 属性窗口,然后关闭性能窗口。

然后在 “开始” -->  “运行”中输入 regedit,开启注册表编辑器。

定位到
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Perflib
处,在右边的树形目录下可以看到Perflib目录下有004和009两个子目录。

在Sql Server 2005 的安装帮助文件中说的是需要查看009目录的注册表项,而我们大部分人使用的是简体中文的操作系统,所以不能按帮助中说的,而是需要注意004目录中的内容。

打开004 目录中的内容,可以看到如下图:



我们分别双击 “Counter” 项 和 “Help” 项,察看其中的最后的数字,如下图:

Counter 项的内容:




Helper 项内容



这时候,我们知道,Counter 项的数字是5556,Helper项的内容是5557。

然后,操作注册表编辑器的左边的目录树,定位到Perflib目录下,并注意检查右边窗口的 “Laster Counter”项和“Laster Help”项的值,并把Laster Counter的值改成刚才记录下的Counter值5556,把Laster Help 的值改成刚才记下的 Help的值5557。

要注意的是,修改数字的时候,输入的时候必须选则基数是 “十进制”,否则数字将不匹配,Sql Server 2005 检查将再次失败。

然后关闭注册表编辑器,开始安装 Sql Server 2005 ,绝对可以安装成功。


注意:我上面说的5556和5557的数字,每个人每台计算机的数字都是不同的,所以必须要一步步来,检查出准确的数字填入,而不是直接看到5556/5557填写,这样还不行的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解决办法就是重新生成性能计数器库值,具体如下: 1)从Window XP 或 Windows 2003 光盘中提出"PERFC009.DA_文件"PERFH009.DA_"文件,通常它们位于光盘的 \i386 目录中,然后进入cdm,键入下面的命令分别展开它们: expand perfc009.da_ expand perfh009.da_ 然后把展开出来的 perfc009.dat 和 perfh009.dat 替换 windows\system32\ 下的同名文件。    展开方式如下:    2)启动注册表编辑器,然后在注册表中查找以下项: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib 将"LastCounter"值更改为 1846(十进制),并将"LastHelp"值更改为 1847(十进制)。    3)继续找到以下注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services 如果存在 Performance 子项,则删除以下值: ? FirstCounter ? FirstHelp ? LastCounter ? LastHelp    4)打开cmd, 键入 cd %Systemroot%\System32 findstr drivername *.ini 然后按 Enter。 注意列表中每个驱动程序名称所对应的 .ini 文件名。 在命令提示符处,键入下面一行,然后按 Enter: lodctr inifile 其中,inifile 是对应您要重新加载的驱动程序的 .ini 文件名。 例如,如果打算重新加载 ASP 驱动程序,则第 4 步中出现的列表将显示 Axperf.ini 是用于 ASP 驱动程序的 .ini 文件 (axperf.ini:drivername=ASP)。因此,要重新加载 ASP 驱动程序,请在命令提示符处键入 lodctr axperf.ini,然后按 Enter。 下面我以 Windows XP 为例,把执行的步骤写上来,建一个bat文件,复制进去执行就可以了。 lodctr esentprf.ini lodctr mqperf.ini lodctr msdtcprf.ini lodctr perfci.ini lodctr perffilt.ini lodctr perfwci.ini lodctr pschdprf.ini lodctr rasctrs.ini lodctr rsvp.ini lodctr tslabels.ini pause    5)重新启动计算机。 最后还是cmd: cd \windows\system32 lodctr /R 注意:/R 是大写。 这时,已经可以看到性能计数器库值已完成了重新生成。   再来看看sql server 2008的安装,一切正常 细节和需要注意的地方,请参考微软支持(http://support.microsoft.com/kb/300956/zh-cn)   如果出现下面这种情况   退后两步,设置成 就行了   再回去看看 一切正常

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值