孤独的猫

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
      重要此部分、 方法,或任务包含告诉您如何修改注册表的步骤。但是,如果注册表修改不当可能会出现严重的问题。因此,请务必认真执行这些步骤。已添加的保护备份注册表之前对其进行修改。然后,您可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756  (http://support.microsoft.com/kb/322756/ ) 如何备份和还原在 Windows 注册表
当您使用系统监视器工具部分计数器可能已丢失或不包含计数器数据。基本组性能计数器库可能会损坏,并且可能需要重新生成。此外,您可能需要重新生成的任何自定义 (。NET 框架应用程序创建) 计数器或任何可扩展的计数器。

如果将特定的可能发生此行为可扩展计数器损坏注册表,; 如果某些 Windows 管理规范 (WMI)-基于的程序修改注册表。

重新生成基本的性能计数器

可扩展计数器信息存储在以下位置的两个:
  • 下面的注册表子项:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\Current Version\Perflib\009
  • %Systemroot%\System32\Perfc009.dat 文件,并将 %Systemroot%\System32\Perfh009.dat 文件
若要手动重新生成基本的性能计数器库,请执行以下步骤:
  1. 展开该Perfc009.dat文件和Perfh009.dat文件。这些文件位于 Windows 安装光盘上。压缩的文件,网址驱动器号: \i386\perfc009.da_ 和驱动器号: \i386\perfh009.da_。替换 %Systemroot%\System32 文件夹中的文件。
  2. 启动注册表编辑器,然后找到以下注册表项中在注册表中:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib
  3. 在注册表中,更改,上一次计数器1846(十进制) 并更改该上一次的帮助1847(十进制)。
  4. 找到下面的注册表项,以搜索具有一个 Performancesubkey 的服务:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
  5. (如果从性能子项中删除以下值它们存在):
    • 第一个计数器
    • 第一个帮助
    • 上一次计数器
    • 上一次的帮助
    您还可以使用 Exctrlst.exe 工具来查找该安装了性能计数器动态链接库文件 (Dll) 和然后访问注册表以删除该 DWORD 值。您现在有了一个可行包含只有系统基本计数器的性能注册表。

    请注意删除注册表中性能子项的值可能会导致任何安装。NET Framework 应用程序不能够在启动下一次。如果发生这种情况使用该lodctr /R重新生成性能计数器"重新添加可扩展计数器"部分中的命令。如果仍有问题,当您启动一个。NET 框架应用程序,请参见在"重新安装任何自定义。NET 框架组件性能计数器"一节中。

重新添加可扩展计数器

您必须重新添加该从服务列表中的可扩展计数器。操作之前, 您必须标识用来加载计数器的.ini 文件:
  1. 打开一个命令提示符窗口。
  2. 在命令提示符中,键入光盘%Systemroot%\System32然后按 ENTER 键。
  3. 在命令提示符中,键入findstr drivername *.inii然后按 ENTER 键。
  4. 记下每名在.ini 文件的名称,列表。
  5. 在命令提示符中键入下面的命令,然后按 ENTER 键:
    lodctrinifile>
    请注意在此命令中,<inifile></inifile>表示在.ini 的名称要重新加载的驱动程序文件。
    例如对于如果您要重新加载该 ASP 驱动程序表明,在步骤 4 中记下的列表Axperf.ini 是 ASP 驱动程序 (axperf.ini:drivername=ASP) 的.ini 文件。因此,若要重新加载了 ASP 驱动程序,键入lodctraxperf.ini在命令提示符,然后按 ENTER。
  6. 对列表中的每个.ini 文件重复步骤 5。
  7. 重新启动计算机。
重新生成所有 Windows Server 2003 中包括可扩展和第三方计数器的性能计数器,请在命令提示符处键入以下命令。每条命令后按 ENTER。
cd\windows\system32
lodctr /R
备注
  • /R 是大写的。您必须具有管理权限才能成功执行此命令在计算机上。
  • 在运行 Windows XP 的是 32 位版本的计算机上,Lodctr /r:文件名>命令是通过使用一个文件名中恢复性能计数器注册表字符串和信息的标准方法。
Windows Server 2003 重建所有计数器,因为它会读取所有.ini 文件在 C:\Windows\inf\009 文件夹中英文版的操作系统。

备注
  • 如果运行的群集或数据中心产品必须故障转移节点来刷新计数器列表中。您必须执行此操作后,请执行步骤在"添加可扩展计数器"基计数器和可扩展的计数器。
  • 在系统上运行的应用程序添加他们自己如 Microsoft Exchange 或 SQL Server 的性能计数器用于加载性能计数器在.ini 文件可能不是位于在 %systemroot%\system32。通常可以在下面找到这些.ini 文件,应用程序文件夹结构。
  • 如果您收到一条错误消息,有关性能库您在使用上面的步骤时您可能需要卸载并重装 IIS性能动态链接库 (Dll)。有关详细信息有关如何执行此操作,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    267831  (http://support.microsoft.com/kb/267831/ ) 当加载性能计数器时记录的事件 ID 2003 警告消息
  • 如果您仍遇到问题,当您启动一个。NET 框架应用程序,请参见在"重新安装任何自定义。NET 框架组件性能计数器"一节。

重新安装任何自定义。NET 框架组件性能计数器

如果仍有问题,当您启动一个。NET Framework 应用程序在执行此处列出的步骤之后,您可能需要重新生成自定义的性能计数器。NET 框架应用程序。若要这样做使用该"/ 我"选项中将。NET 框架安装程序工具 (Installutil.exe)。您必须知道创建性能计数器 DLL 文件的文件名。

示例

如果按照下面的过程从已安装的 Microsoft 系统中心操作管理器 2007年的系统上安装的所有服务的注册表中删除计数器可能有损坏的管理服务器。这是因为可扩展计数器 INI 文件中的窗体中未提供用于配置服务、 SDK 服务和数据库写入模块计数器。相反,他们是在安装时进行注册。因此,当您尝试启动系统中心操作管理器 2007年,您可能会收到类似于以下,由于性能计数器丢失一条错误消息:

事件类型: 错误
来源: OpsMgr SDK 服务
事件类别: 无
事件 ID: 26380
日期:日期
时间:时间
用户: 不适用
计算机: MOM
说明:由于未处理的异常系统中心操作管理器 SDK 服务失败。

若要解决此问题,在系统中心操作管理器 2007 年,则必须重新安装该。NET 框架程序集创建性能计数器。要这样做使用 /i 选项中的将。NET 框架安装程序工具 (Installutil.exe) 重新安装下列程序集:
  • Microsoft.Mom.ConfigService.dll
  • Microsoft.Mom.Sdk.ServiceDataLayer.dll
  • Microsoft.Mom.DatabaseWriteModules.dll
  • Microsoft.EnterpriseManagement.HealthService.Modules.DataWarehouse.dll
例如对于命令提示符中键入下面的命令,然后在每个命令之后按 ENTER 键:
InstallUtil Microsoft.Mom.ConfigService.dll /i

InstallUtil Microsoft.Mom.Sdk.ServiceDataLayer.dll /i

InstallUtil Microsoft.Mom.DatabaseWriteModules.dll /i

InstallUtil Microsoft.EnterpriseManagement.HealthService.Modules.DataWarehouse.dll /i
posted on 2011-04-24 22:55  孤独的猫  阅读(3855)  评论(0编辑  收藏  举报