活动监视器无法对服务器执行查询

是否有任何修复,让SSMS活动监测工作?

问题:

SQL Server活动监视器失败并出现错误对话框:

TITLE:Microsoft SQL Server Management Studio
活动监视器无法对服务器[SERVER]执行查询。 此实例的活动监视器将被置于暂停状态。 使用概览窗格中的上下文菜单来恢复活动监视器。

附加信息:
无法在服务器[SERVER](Microsoft.SqlServer.Management.ResourceMonitoring)上findSQL Server进程ID [PID]

我在SQL Server 2008 R2 x64开发版中遇到了这个问题,但是我认为在所有使用SQL Server 2008的64位系统中,在一些尚未识别的条件下都可以find它。

Microsoft Connect中有关于此的错误报告 ,但尚未解决。

检查性能监视器中是否存在SQLServer性能计数器。 如果没有, 手动重build所有性能计数器运行lodctr /R命令与pipe理权限:

 cd \windows\system32 lodctr /R 

好的,我想我已经find了一个解决scheme。

这个问题似乎是需要查询对方的32位和64位应用程序的混合。

如果您在服务控制面板中启用服务性能计数器DLL主机 ,活动监视器现在应该工作。

在最简单的情况下,您只需要重新启动SSMS。 我活动监视器运行时丢失了networking连接后,SSMS 2008 R2在2005服务器上运行时遇到了这个问题。 在我决定尝试重新启动SSMS之前,我尝试了一些技巧,这就是帮助。

如果SQL正在Windows 2008 R2服务器或群集上运行,请转到性能监视器应用程序,展开数据收集集,然后select“系统性能”,如果菜单下面的行上的箭头是绿色,请单击它。 这将重新启动计数器,您可能希望做同样的系统诊断收集设置。

然后,只需刷新或打开新的连接到您希望打开SSMS活动监视器的SQL实例,这应该已经解决了您的问题。

我今天偶然发现了这个 当然,在总览窗格中使用上下文菜单来恢复活动监视器的错误信息并没有帮助我。

希望这有助于某人。

我以为我会在这个问题上发表我的经验。

症状 – Dell机器上的SQL Server 2008 R2突然遭受巨大的性能下降。 执行查询时,用户应用程序变得非常慢。 活动监视器将启动 – 但是如果您尝试打开进程列表,则会出现上述进程超时错误。

数据库的还原备份在具有一半内存的第二台服务器上运行良好。 将这些相同的备份还原到原始服务器不能解决问题。

我在所有数据库上运行了dbcc,重build了索引。 强制重新创buildWindows页面文件。 尝试重新启动SQL服务器。 尝试重新启动服务器。 这些都没有工作。 重置性能计数器如上所述 – 这改善了服务器CPU使用率,但没有解决任何问题。

我们的networkingpipe理员想排除硬件问题。 他更新了RAID控制器的设备驱动程序,然后closures了服务器。 他使用戴尔的电源序列清除内存,这涉及断开电源。 重新启动后,服务器运行良好。

我们相信电源循环解决了这个问题,而且底层问题是硬件内存。

我得到相同的错误信息,并查看技术细节。 这导致我到Microsoft.SqlServer.Management.ResourceMonitoring.dll。 我反编译了抛出错误的方法,在通过代码追踪了一下之后,我发现“Process”组中的PerformanceCounter试图实例化一个区域。 那么我检查了Perfmon,那个组不在那里。 其他柜台正在工作,但那个不在那里。 看起来像那个组不知何故被禁用。

如何解决这个问题:使用registryfindHKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ PerfProc \ Performance有一个关键在那里称为禁用性能计数器,删除它或将其设置为0您可能需要重新启动后,您更改密钥。

我不能评论,因此新的答案…

我首先尝试了EightVans的build议

如何解决这个问题:使用registryfindHKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ PerfProc \ Performance有一个关键在那里称为禁用性能计数器,删除它或将其设置为0您可能需要重新启动后,您更改密钥。

而我仍然遇到这个问题。 然后我试了renaud的build议:

如果您在服务控制面板中启用服务性能计数器DLL主机,活动监视器现在应该工作。

而我仍然遇到这个问题。 然后我试着Mika的build议:

检查性能监视器中是否存在SQLServer性能计数器。 如果没有,手动重build所有性能计数器运行lodctr / R命令与pipe理权限:

现在活动监视器正在工作!

我只是做

EightVansbuild议第一

如何解决这个问题:使用registryfindHKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ PerfProc \ Performance有一个关键在那里称为禁用性能计数器,删除它或将其设置为0您可能需要重新启动后,您更改密钥。

米卡的build议是:

检查性能监视器中是否存在SQLServer性能计数器。 如果没有,手动重build所有性能计数器运行lodctr / R命令与pipe理权限:

活动监视器现在正在我的系统中运行!