Perfmon not displaying SQL counters remotely for non Admins

Posted on 2007-11-27
Medium Priority
Last Modified: 2013-12-05
I have a user that needs to be able to run perfmon remotely to monitor SQL server counters.

I have configured the server as per this article and the user is able to use Perfmon remotely whereas before he would get access denied. We are using SQL and Windows 2000.


The problem is that he is unable to see the SQL (or SMS which isn't relevant) counters remotely. When I connect as admin locally and remotely I get the full list of counters from the dropdown list including SQL. This shows it isn't related to the countless issues people have had where SQL counters disappear completely for everyone.

I suspect there is either a registry entry or DLL that needs to give Read access to the user but I have no idea which one it might be. As far as I can tell from following these steps, the user should have read access for all "Services".

I also cannot find an article that tells me how Perfmon works with regard to the counters.
Question by:AWGMorrison
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +1
LVL 31

Expert Comment

by:James Murrell
ID: 20358796

Author Comment

ID: 20364461
Thanks for the suggestion. I don't think that really helps but if I am honest I don't really understand a lot of the article as I am not a DBA or a developer.

I am going to post on the MS forums and see if I get any response.

Accepted Solution

AWGMorrison earned 0 total points
ID: 20364641
I have found the answer:
I have included the whole process but step 5 answers my question. This DLL is what defines the performance counters for SQL and the user needs read access to it.

Procedure for allowing Perfmon to monitor SQL remotely for non admins:

A group has been created in Active directory called "Perfmon Users" where users can be added to to give them access to remotely use Perfmon

1) In Windows Explorer or File Manager, give the user at least READ access to the following files:

where xxx is the basic language ID for the system, for example, 009 for English.

2) Start Registry Editor (regedt32), and then give the user at least READ access to the following registry keys:

3) Give the user at least READ access to the following key and allow
Read permission to propagate down to the Services subkeys:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Services

4) With Windows 2000, in addition to the access described above, the user must also have access granted by the following Group Policies:
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment
Profile System Performance
Profile Single Process

5) Browse to \\Program Files\Microsoft SQL Server\MSSQL\Binn and give the user READ permission on the SQLCTR80.dll
Office 365 Training for IT Pros

Learn how to provision tenants, synchronize on-premise Active Directory, implement Single Sign-On, customize Office deployment, and protect your organization with eDiscovery and DLP policies.  Only from Platform Scholar.

LVL 31

Expert Comment

by:James Murrell
ID: 20364800
cool sorry my link did not solve but glad you found a solution and posted here

Expert Comment

ID: 20390968
Closed, 500 points refunded.
Community Support Moderator

Expert Comment

ID: 21872461
After following the above steps, I am able to view the remote machines performace counters except the SQL related counters. I am able to view these SQL counters with admin account.

I am unable to find SQLCTR80.dll in SQL binn directory to give read permissions. I think this could be the reason behind the problem. I am running SQL server 2005 and I don't have this dll inside installation directory.

Any once else faced this problem? Do I need to copy and registrer this dll manually?


Expert Comment

ID: 21873269
Please use the 'ask a related question' function and open your own question. Doing so will send an alert to everyone who participated in the question.

The only reward the Experts get for helping you is the electronic 'points' offered with new questions.

You are a Premium Service member with unlimited points - so there is no additional cost to you.

Community Support Moderator

Featured Post

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
In the first part of this tutorial we will cover the prerequisites for installing SQL Server vNext on Linux.
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question