惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Martin Fowler
Martin Fowler
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
IT之家
IT之家
云风的 BLOG
云风的 BLOG
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
Microsoft Azure Blog
Microsoft Azure Blog
Engineering at Meta
Engineering at Meta
P
Proofpoint News Feed
博客园_首页
J
Java Code Geeks
C
Check Point Blog
I
InfoQ
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
D
Docker
U
Unit 42
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
GbyAI
GbyAI
N
Netflix TechBlog - Medium
T
Tailwind CSS Blog

博客园 - bigboo

在VirtualBox虚拟机CentOS6.3安装VBoxAdditions时报错:“building the main Guest Additions module Failed” win32/mfc 异常处理与总结 [转]Windows 7 版本知多少(Win 7 N/K/KN/E) [转]XP 下面标准的dxva 接口不支持h.264 硬件解码的原因 当Windows无法打开新窗口 - bigboo - 博客园 [求助]在Windows Server 2003 SP2上安装SQL SERVER 2008 Express版本时,会遇到“调用的目标发生了异常”的错误,MSDN上提供的修复包需要解压密码 [备案]Windows10月23日 紧急安全更新(KB958644)危害程度"冲击波"类似 - bigboo - 博客园 [原创]关于“ASP.NET MVC Preview 5使用中,只有MVC Project模板,没有MVC Item 模板(MVC Item Template)的问题”解决 ASP.NET MVC Preview 5 发布了,发布日期是2008.08.28,关注一下 [转]密码学基础 (个人认为这篇文章可以作为基础教程,忘记的时候可以翻出来瞧瞧) [转]Oracle与SQL Server选型时注意的三个差异 今天注册了个联想的号称5G网络盘,试用了一下,感觉还行(尽管......),上几个图吧,呵呵 "Enterprise Library 4.0 - May 2008" 支持.net Framework 3.5的版本五月份就发布了,刚看到..... IEDevToolBar - 一个分析网页的有用的工具 [z]在VM虚拟机器redhat9下安裝vmware-tool的方法 [原创]查杀中搜在线的searchnet.exe病毒、流氓“划词搜索”病毒和TSPY.AGENT.ASV病毒 关于Nero其Enterprise.Edition对于Ultra.Edition的不同之处!! Enterprise Library For .NetFramework 芮儿的来历
[原创]SQL Server 2008 安装过程中遇到“性能计数器注册表配置...
bigboo · 2008-09-30 · via 博客园 - bigboo

在Windows Server 2003 、Windows XP或者Windows 2000中安装 SQL SERVER 2008 开发版和企业版时,会遇到“性能计数器注册表配置单元一致性”检查失败 的问题(Windows Server 2008 由于暂时没有环境,尚未测试)

(图一)

安装提示错误信息为:

(图二)

解决方法:

先根据帮助提示,打开 http://support.microsoft.com/kb/300956,帮助的文档是让你使用安装光盘重置性能计数器文件,操作步骤比较复杂,可是我并没有安装什么特殊的软件,而且确定也没有病毒感染,为什么性能计数器会损坏呢,因此决定不到万不得已暂时不去重置性能计数器,以免扩大问题的影响面。(Microsoft的Help文档经常是答非所问....)

果然,经翻阅文档,发现计数器配置信息保存在注册表

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib]中

操作步骤:

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:0000566a(22122)   (这个值根据不同的机器各不相同,不是固定值)
"Last Help"=dword:0000566b(22123)        (这个值根据不同的机器各不相同,不是固定值)

(图三)

在图三中我们看到,Perflib下存在两个子项目

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\004]

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

经过比较,发现在两个子文件夹项目下面存在的计数器最大值不同

(图四)Perflib\004中Counter项目的最大值为22178(这个值根据不同的机器各不相同,不是固定值

(图五)Perflib\004中Help项目的最大值为22179(这个值根据不同的机器各不相同,不是固定值

(图六)Perflib\009中Counter项目的最大值为22122(这个值根据不同的机器各不相同,不是固定值

(图七)Perflib\009中Help项目的最大值为22123(这个值根据不同的机器各不相同,不是固定值

很显然,如图所示,在我的机器上[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib]中

"Last Counter"和"Last Help"这两项的值,和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009]中保存的最大值是相同的,分别为22122和22123(这两个数值每台电脑各不相同),而和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\004]中保存的最大值不相同,正是由于这个差异,造成了SQL Server 2008 安装过程中遇到“性能计数器注册表配置单元一致性”检查失败的故障。

原因分析:

由于之前安装过的Visual Studio 2008英文版中所带的Visual Studio 2005 Express语言版本是英文版,同时又测试安装了SQL SERVER 2005 Developer Edition简体中文开发版,之后又卸载了SQL SERVER 2005 Developer Edition简体中文开发版,打算安装SQL SERVER 2008 Developer Edition简体中文开发办,由于语言的不一致性以及反复多次的安装卸载,估计是安装程序在卸载的时候的错误,造成了注册表中键值不一致的现象

问题解决:

知道的故障的起因,问题就很好解决了,由于我们使用的是简体中文版操作系统,所以要保证

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib] 中"Last Counter"和"Last Help"这两项的值与

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\004]中"Counter"和"Help"两项保存的最大值相同就可以了

如果我们使用的是英文版操作系统,那就要保证

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib] 中"Last Counter"和"Last Help"这两项的值与

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009]中保存的最大值相同就可以了

(图八)

修改[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib] 中"Last Counter"的值,使它和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\004] 中"Counter"的最大值保持一致,我们这里是改为22178

(图九)

修改[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib] 中"Last Help"的值,使它和[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\004] 中"Help"的最大值保持一致,我们这里是改为22179

要注意的是,修改数字的时候,必须选择基数是 “十进制”(默认是十六进制),否则数字将不匹配,SQL SERVER 2008 安装程序检查将再次失败

注意:修改注册表存在一定风险,可能造成您的系统损坏,请先备份注册表,以备在出现问题后可以恢复。有关如何备份和还原注册表,请参考Microsoft 知识库中相应的主题:[322756]如何备份和还原 Windows 注册表

测试效果:

然后关闭注册表编辑器,再次开始安装 SQL SERVER 2008 Developer Edition简体中文开发版

(图十)测试通过,不再出现错误,可以正常安装了

至此,问题彻底解决,而解决方法,只是简单得修改了两个注册表键值。

总结:

由此可见,在遇到问题时,如果不加思考,完全生搬硬套帮助文档,可能事倍功半,还会引起很多不必要的麻烦,因为帮助文档只是给我们指明了大致的方向,编写帮助文档的人也不可能知道我们遇到问题的实际环境,因此帮助文档作为参考是非常有用的,但是遇到问题的时候,我们的实际经验和动手测试的能力也是非常重要的,这样才能少走弯路。