关于安装SQLserver2008报错(1)

在卸载SQL Server 2005后安装2008报错,表现为性能计数器注册表配置单元一致性失败。错误原因可能是注册表相关项缺失。解决方案包括使用`lodctr /r`命令自动重建或手动替换Perfc009.dat和Perfh009.dat文件,并调整注册表中的Last Counter和Last Help值。如果.NET Framework应用程序受影响,需使用`lodctr /R`命令重新添加可扩展计数器。

安装规则支持程序

报错:性能计数器注册表配置单元一致性--失败。

以前装的sqlserver2005,最近由于毕设需要升级成sqlserver2008,卸载2005之后再安装2008就出现了这个错误。

确定原因是性能注册表损坏。在注册表

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\Current Version\Perflib\009

位置缺少Counter 及 Help 两项。可能是因为卸载2005时删除了(安装2008可以直接从2005升级,不需要卸载2005直接运行2008安装文件,选择“从SQL Server2000、SQL Server2005 或SQL Server2008升级”即可)。

可扩展计数器信息存储在以下两个位置中:

以下注册表子项:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\Current Version\Perflib\009

存储%Systemroot%\System32\Perfc009.dat 文件和 %Systemroot%\System32\Perfh009.dat 文件

解决办法是在命令提示符下键入:lodctr /r  自动重建性能计数器字符串表。

或者是手动重建,方法如下:

  1. 展开“Perfc009.dat”文件和“Perfh009.dat”文件。这些文件位于 Windows 安装光盘中。压缩文件位于DriveLetter:\i386\perfc009.da_ 和 DriveLetter:\i386\perfh009.da_。替换 %Systemroot%\System32 文件夹中的文件。
  2. 启动注册表编辑器,然后在注册表中查找以下项:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib
  3. 在注册表中,将“Last Counter”值更改为 1846(十进制),并将“Last Help” 值更改为 1847(十进制)。
  4. 查找以下注册表项,以搜索具有 Performancesubkey 的服务:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
  5. 从 Performance 子项(如果存在)删除以下值:
    • First Counter
    • First Help
    • Last Counter
    • Last Help
    您还可以使用 Exctrlst.exe 工具来查找安装的性能计数器动态链接库文件 (DLL),然后访问注册表以删除 DWORD 值。现在您拥有了只包含系统基计数器的可以正常使用的性能注册表。

    注意 在注册表编辑器中从 Performance 子项删除值可能导致已安装的 .NET Framework 应用程序在下次启动时无法正常工作。如果发生这种情况,请使用“重新添加可扩展计数器”部分中的 lodctr /R 命令来重新生成性能计数器。如果您在启动 .NET Framework 应用程序时仍遇到问题,请参阅本文章中的“重新安装所有自定义 .NET Framework 程序集性能计数器”部分。

重新添加可扩展计数器

您必须从服务列表中重新添加可扩展计数器。在执行此操作之前,您必须标识用来加载计数器的 .ini 文件:
  1. 打开一个命令提示符窗口。
  2. 在命令提示符处,键入 cd %Systemroot%\System32,然后按 Enter。
  3. 在命令提示符处,键入 findstr drivername *.ini,然后按 Enter。
  4. 注意列表中每个驱动程序名称所对应的 .ini 文件名。
  5. 在命令提示符后,键入以下命令,然后按 Enter:
    lodctr <inifile>
    注意:在此命令中,<inifile> 表示要重新加载的驱动程序的 .ini 文件的名称。
    例如,如果希望重新加载 ASP 驱动程序,则在步骤 4 中提到的列表将显示 Axperf.ini 是 ASP 驱动程序的 .ini 文件 (axperf.ini:drivername=ASP)。因此,要重新加载 ASP 驱动程序,请在命令提示符处键入 lodctr axperf.ini,然后按 Enter。
  6. 为列表中的所有 .ini 文件重复第 5 步。
  7. 重新启动计算机。

参考链接:http://support.microsoft.com/zh-cn/kb/300956

今天将由于需要就将我的SQL 2008升级SQL 2008 R2. 说到为什么要升级是因为,从另一台机器上备份了一个数据库,到我的机器上还原的时候提示“System.Data.SqlClient.Sqlerror:该数据库是在运行版本10.50.2500的服务器上备份的,该版本与此服务器(运行版本10.00.1600)不兼容。请在支持该备份的服务器上还原数据库,或者使用与此服务器兼容的备份。” 经过一番查证得知: 所谓的10.00.1600其实就是SQL 2008 10.50.1600其实就是SQL 2008 R2 10.50.2500其实就是SQL 2008 R2 SP1 这样一来基本就明了了。 我得升级自己的数据库到SQL 2008 R2 SP1。 这篇文章就把我先升级SQL 2008 R2的过程详细记录下来,下一篇文章会介绍升级R2到R2 SP1. 第一步:准备安装程序。 首先SQL 2008安装好的 因此只需要下载SQL 2008 R2安装程序,下载地址如下:http://care.dlservice.microsoft.com/dl/download/1/E/6/1E626796-588A-495C-917B-321093FB98EB/2052/SQLFULL_x86_CHS.exe?lcid=2052&ptype=pcare 第二步:升级开始。SHOW TIME!!! 1、如果是从SQL2008升级SQL2008R2那么只能选择左侧“安装”对应右侧“从SQL SERVER 2000,SQL 2005SQL 2008升级”这个选项来升级。 大家也注意到有一个“维护”但是这个选项是“从SQL 2008其他例如EXPRESS版本升级” 在此,要区分清楚。 2安装程序支持规则检查。通过之后就继续下一步。 3、输入产品密钥,这个地方,你的密钥是什么版本的,装完之后你的数据库就是什么版本:像企业版,开发版等等等。 4、许可条款必须接受,不然人家不让用啊~~~ 5、安装程序支持文件。 6、程序支持规则安装完成后程序会自动检测安装的文件是否满足需求。 7、当你的服务器中只有一个实例的时候,你很难听到实例这个词,人们都直接叫他“数据库”了。只有在服务器上安装的实例数目超过两个的时候你才会听到“实例”二字比较多。 但是“实例”肯定是学习数据库过程中必须熟知的东东!!! 此处,选择你想要升级的实例。下一步就行了。 8、以前安装过的组件(component)都会出现在这里,不用管,以前有的,现在当然也要有,闭着眼睛点击“下一步”吧! 9、因为是升级安装,所以你以前的实例名字是什么,这里还是什么。继续“下一步”。 10、不废话,“下一步”。 11、是否发送错误报告,随便,下一步。 12、“下一步”。 13、点击“升级”按钮进行升级,中途等待大约20-30分钟就完成了。 升级过程中如图: 14、安装成功要求重新启动。重启吧没的说!! 15、重启完毕,启动SSMS(SQL SERVER MANAGEMENT STUDIO)在登陆界面上就会立马察觉到不同,SQL 2008变成了SQL 2008 R2. 16、连接上数据库引擎,在左侧导航栏就可以看到你数据库的版本了。这次变成了10.50.1600。如果还要升级10.50.2500。那就继续安装一个升级补丁吧! 至此,10.00.1600升级10.50.1600已经成功完成。 总结一下: 10.00.1600就是SQL SERVER 2008 10.50.1600就是SQL SERVER 2008 R2 这篇博文里讲的是升级安装,如果你要进行全新安装,请按照如下操作: 一、卸载SQL SERVER 2008,一定要卸载,数据库不像其他常用的应用程序(那些程序会自动检测是否有旧版本,然后给你卸载并升级)。 另:对SQL来说,如果你安装好之后,再进行一次安装的话,实际上安装的是另外一个实例。 二、卸载完之后就安装就行了。执行的是安装---全新安装。 其他细节参考我的博文:SQL SERVER 2008安装(在实例、权限等方面,SQL 2008SQL 2008 R2是一样的)。
### SQL Server 2008 安装错误代码 2337 的解决方案 在安装 SQL Server 2008 时遇到错误代码 2337,通常是因为 MOF 文件存在语法错误或配置文件损坏所致。以下是针对此问题的具体分析和解决方法: #### 可能的原因 1. **MOF 文件语法错误** 错误可能源于 Windows Management Instrumentation (WMI) 配置中的 MOF 文件存在问题[^1]。 2. **系统环境不兼容** 如果操作系统未满足 SQL Server 2008 的最低要求,则可能导致此类错误发生。 3. **依赖组件缺失或损坏** .NET Framework 或其他必要组件未能正确加载也可能引发该错误[^2]。 --- #### 解决方案 ##### 方法一:修复 WMI 组件 执行以下步骤可以重新编译并验证 MOF 文件: 1. 打开命令提示符(以管理员身份运行)。 2. 输入以下命令来停止 WMI 服务: ```cmd net stop winmgmt ``` 3. 删除旧的存储库目录: ```cmd rd /s %windir%\System32\wbem\Repository ``` 4. 使用 `mofcomp` 工具重新编译默认的 MOF 文件: ```cmd cd %windir%\System32\wbem mofcomp cimwin32.mof ``` 如果上述操作完成后仍出现问题,可考虑更新 KB 补丁。 --- ##### 方法二:检查并重装 .NET Framework 确保目标计算机已正确安装支持版本的 .NET Framework。可以通过以下方式确认其状态: 1. 访问 Microsoft 下载中心获取最新版 [.NET Framework](https://dotnet.microsoft.com/download/dotnet-framework) 并完成安装2. 清理残留数据后再试一次安装过程。 --- ##### 方法三:清理注册表项 有时遗留的 SQL Server 注册表键值会干扰新实例部署工作流。建议手动移除相关条目或者借助第三方工具 Total Uninstall 进行彻底清除处理前需备份整个注册表以防万一丢失重要设置信息[^3][^4]。 具体路径包括但不限于以下几个位置: - HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\ - HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\[...] 注意替换方括号部分为实际存在的子节点名称。 --- ##### 方法四:应用官方补丁包 微软已经发布多个累积更新(CU),其中某些专门用于修正早期 RTM 版本中存在的缺陷情况。例如 KB2387686 和 KB2446036 就涉及到了相似类型的场景描述。因此强烈推荐先打上对应的服务包(SP)以及最新的 CUs 来提升稳定性表现水平。 最终再尝试重新启动 setup.exe 流程看是否能够顺利完成全部阶段的任务安排吧! --- ### 总结 通过以上四种途径之一或多者组合运用往往可以帮助克服因各种潜在因素所引起的编号为“2337”的特定状况障碍现象;当然每种措施实施之前最好做好充分准备比如创建系统还原点之类的预防手段以免造成不必要的麻烦困扰哦~
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值