Nếu bạn chắc chắn rằng người dùng trong câu hỏi có View Server State
(và có vẻ như trong ảnh chụp màn hình của bạn, anh ta sẽ làm như vậy).
Sau đó, có một số lý do trước đây được đưa vào một blog msDN. Khác nhau từ:
- Các đối tượng hiệu suất và bộ đếm thiết lập trong quá trình cài đặt Máy chủ SQL không thành công.
- Một hỗn hợp của nền tảng 64 và 32 bit.
- Quyền đăng ký đã bị sai lệch
Để giải quyết vấn đề này, chúng tôi có thể sử dụng các bước tương tự được nêu trong hướng dẫn cài đặt lại bộ đếm hiệu suất trong một bài trao đổi ngăn xếp khác nhau:
Sử dụng dấu nhắc lệnh quản trị viên nâng cao thực hiện các bước sau.
- Thay đổi đường dẫn đến
BINN
thư mục của phiên bản SQL Server mà bạn muốn sửa.
(Ví dụ C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn
:)
- Thực thi
unlodctr <<REGISTERED SERVER NAME>>
Ví dụ: unlodctr MSSQL$SQL2008
hoặc SQLAgent$SQL2008
...
- Thực thi
lodctr /T:<<perf-sql* matching the counters you desire to load>>
Ví dụ: perf-MSSQL$SQL2008sqlctr.ini
hoặc perf-SQLAgent$SQL2008sqlagtctr.ini
cho SQLAgent. Điều /T
quan trọng là tải nhà cung cấp bộ đếm hiệu suất SQL Server làm nhà cung cấp đáng tin cậy .
- Chu kỳ dịch vụ đăng ký từ xa:
net stop "Remote Registry"
sau đónet start "Remote Registry"
- Buộc đồng bộ hóa WMI bằng cách sử dụng
winmgmt /resyncperfctr "<<PID>>"
PID là id quy trình của WinPriv.exe
(bạn có thể lấy thông tin này từ Trình quản lý tác vụ)
Những điều sau đây cũng có thể được yêu cầu:
sysadmin
quyền thì anh ta không yêu cầuview server state
quyền chạy DMV, nó được bao gồm trong vai trò sysadmin. Trong ánh sáng ở trên nếu không có hàng nào được trả về, điều này có nghĩa là bộ đếm perfmon không được cài đặt.