如何在安装SQL Server R2 Express时修复“性能计数器注册表配置单元一致性”?

时间:2010-08-13 12:23:22

标签: sql-server install sql-server-express

我正在尝试从此站点安装SQL Server 2008 R2 Express:

http://www.microsoft.com/express/database/

我有一台64位的Windows 7机器。

我已经尝试了32位和64位版本,但每个版本都失败了“性能计数器注册表配置单元一致性”。

如何修复此问题以便安装SQL Server 2008 R2 Express?

alt text

11 个答案:

答案 0 :(得分:61)

您可以完全跳过设置中的性能计数器检查:

setup.exe /ACTION=install /SKIPRULES=PerfMonCounterNotCorruptedCheck

答案 1 :(得分:15)

使用Rafael的解决方案:http://social.msdn.microsoft.com/Forums/en/sqlsetupandupgrade/thread/dddf0349-557b-48c7-bf82-6bd1adb5c694 ..

从链接添加数据以避免链接腐烂..

将其放在任何控制台应用程序中:

  

string.Format(“{0,3}”,CultureInfo.InstalledUICulture.Parent.LCID.ToString(“X”))。Replace(“”,“0”);

观察结果。我的是“016”。

然后你可以通过这个密钥进入注册表:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib

并使用您从string.Format结果获得的名称创建另一个。

就我而言:

"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\016"

并将此Perflib中任何其他键上的信息复制到您刚创建的此键。再次运行安装程序。

只需运行脚本并获取3位数代码即可。然后按照他简单快捷的步骤,你准备好了!

干杯

答案 2 :(得分:13)

我有同样的问题。对我来说,这个解决方案适用于 SQL Server 2008 R2 Express

  1. SQLEXPRWT_x64_ENU.exe创建快捷方式(这是...的名称 我使用的文件)
  2. 右键单击快捷方式,然后单击“属性”
  3. 在快捷方式标签下找一个显示“目标”
  4. 的框
  5. 在目标框内,添加已存在的内容 行:
  6.   

    / Action = install / SKIPRULES = PerfMonCounterNotCorruptedCheck

    当然这并不能解决根本问题,但它是一种解决方法,因为此修复程序也适用于在设置中跳过性能计数器检查的原则。不同之处在于,当通过命令行执行此操作失败时,此方法对我有用。

答案 3 :(得分:8)

我有perf计数器问题,这就是我所做的。

  1. 我的exe文件是SQLManagementStudio_x86_ENU.exe
  2. 在命令行中键入以下行,然后按Enter键
  3.   

    C:\ Projects \ Installer \ SQL Server 2008 Management Studio \ SQLManagementStudio_x86_ENU.exe / ACTION = install / SKIPRULES = PerfMonCounterNotCorruptedCheck

    (注意:我在我的机器C:\ Projects \ Installer \ SQL Server 2008 Management Studio的这个位置有exe)

    1. SQL Server安装已启动,这次它跳过了Perf计数器注册表值的规则。安装成功。

答案 4 :(得分:3)

打开命令行和 输入 lodctr / r p。计数器将被重新加载\重新创建。

没有必要跳过它。 http://technet.microsoft.com/en-us/library/cc774958.aspx

答案 5 :(得分:3)

忽略检查会导致安装损坏。 这是唯一对我有用的解决方案:

  1. 使用以下代码创建C#控制台应用程序:  Console.WriteLine(string.Format("{0,3}", CultureInfo.InstalledUICulture.Parent.LCID.ToString("X")).Replace(" ", "0"));

  2. 运行应用程序并获取3位数代码。

  3. 运行>注册表,打开以下路径: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Perflib

  4. 现在,如果您在该路径下面没有使用步骤2中的3位数代码的文件夹,请创建它。 如果您有该文件夹,请检查该路径下是否设置了“计数器”和“帮助”值。 它可能没有 - 这就是检查失败的原因。

    创建缺少的计数器和帮助键(REG_MULTI_SZ)。对于值,从上面的现有路径(可能是009)复制它们。

    检查现在应该通过。

答案 6 :(得分:1)

这对我有用:

Click on Start and type in CMD
Right click and click on Run as administrator
Then from C:\windows\system32 type 
lodctr /R:PerfStringBackup.INI 

and press Enter
then restart the compurter and retry!

答案 7 :(得分:1)

<sqlserverdir>\setup.exe /ACTION=install /SKIPRULES=PerfMonCounterNotCorruptedCheck

上面为我工作......我使用命令行界面从外部安装了它。

答案 8 :(得分:0)

以下解决方案适用于我,您可以尝试:

  • 写入运行:regedit

  • 然后打开

    HKEY_LOCAL_MACHINE - &gt;软件 - &gt;微软 - &gt; Windows NT - &gt; Perflib

  • 在/ 009和/ 01F文件下,右键单击并选择新文件并选择 “多字符串值”将其命名为“Counter”并再次执行这些步骤 创建“帮助”命名文件。 (重要!!它区分大小写)

  • 复制“计数器”和“帮助”文件的内容 “CurrentLanguage”到/ 009和/ 01F文件。

答案 9 :(得分:0)

将执行文件保存在桌面上 确保记下文件名 去开始 输入cmd 右键单击它

选择以管理员身份运行,按Enter键

那么你下面的东西

C:\ Users \您的计算机名称\桌面>

如果您看到

C:\ Windows \ system32>

确保使用CD进行更改

输入文件名

C:\ Users \您的计算机名称\桌面>您的副本文件的名称。exe/ ACTION = install / SKIPRULES = PerfMonCounterNotCorruptedCheck

答案 10 :(得分:-2)

好吧,问题的解决方案如下:

  1. 点击:开始
  2. 写下这个词:ejecut
  3. 之后,写:regedit
  4. 打开目录:HKEY_LOCAL_MACHINE
  5. SOFTWARE
  6. 微软
  7. Windows NT
  8. CURRENTVERSION
  9. Perflib
  10. 检查以下事项:
  11. 1)文件夹00A: 2)计数器:最后一个数字 3)帮助:最后一个数字

       Folder Perflib:
       Last Counter: 00A folder´s Counter 
       Last Help: 00A folder´s Help
    

    准备就绪,验证两者中的相同数字。成功