无权访问 SQL 服务器性能计数器

无权访问 SQL 服务器性能计数器

我的 DBA 团队无权访问 SQL Server 2005 标准性能计数器。

他们应该被授予什么权限?我找到了一些注册表项,但他们在那里已经有权限了。他们不是操作系统管理员。

答案1

你指的是sys.dm_os_performance_counters 车辆管理处?
您需要授予 SQL Server 登录 VIEW SERVER STATE 权限。

GRANT VIEW SERVER STATE to [performance_user]

这还将使用户帐户能够访问所有其他 DMV,但可能不够细致。简单地授予视图上的 SELECT 权限是行不通的!!

如果您想在 SQL Server 之外执行此操作并使用性能监视器 mmc,请查看此MSKB 文章。 您将需要修改服务器上的一些文件级别权限和注册表级别权限:

如果系统根目录位于 NTFS 分区上,则您必须至少具有对以下两个文件的读取权限:

  • %SystemRoot%\System32\Perfc009.dat
  • %SystemRoot%\System32\Perfh009.dat

您必须至少具有对远程计算机上的以下注册表项的读取权限:

  • HKEYLM\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg
  • HKEYLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib

您必须对远程计算机上的以下注册表项具有完全访问权限:

  • HKEYLM\SYSTEM\CurrentControlSet\services\servicename\performance

答案2

受影响的机器上是否正在运行远程注册服务?此外,为 DBA 添加域用户帐户(或者更好的是,为 DBA 创建域组),并将域用户或组添加到本地性能监视器用户组。

相关内容