Si está seguro de que el usuario en cuestión tiene View Server State
(y parece que en su captura de pantalla lo hace).
Luego hay una serie de razones previamente puestas en un blog msdn. Que van desde:
- Falló la configuración de los objetos de rendimiento y los contadores durante la instalación de SQL Server.
- Una mezcla de plataformas de 64 y 32 bits.
- Los permisos de registro han sido sesgados
Para resolver esto, podemos usar los mismos pasos descritos en las pautas para reinstalar los contadores de rendimiento en una publicación de intercambio de pila diferente:
Con un símbolo del sistema de administrador elevado, realice los siguientes pasos.
- Cambie la ruta al
BINN
directorio de la instancia de SQL Server que desea corregir.
(Ex: C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn
)
- Ejecutar
unlodctr <<REGISTERED SERVER NAME>>
Por ejemplo: unlodctr MSSQL$SQL2008
o SQLAgent$SQL2008
...
- Ejecutar
lodctr /T:<<perf-sql* matching the counters you desire to load>>
Por ejemplo: perf-MSSQL$SQL2008sqlctr.ini
o perf-SQLAgent$SQL2008sqlagtctr.ini
para SQLAgent. El /T
es importante cargar el proveedor de contadores de rendimiento de SQL Server como un proveedor de confianza .
- Ciclo del servicio de registro remoto:
net stop "Remote Registry"
luegonet start "Remote Registry"
- Forzar una sincronización WMI usando
winmgmt /resyncperfctr "<<PID>>"
donde PID es la identificación del proceso del WinPriv.exe
(puede obtener esto desde el Administrador de tareas)
También se puede requerir lo siguiente:
sysadmin
permiso, no necesitaview server state
permiso para ejecutar el DMV incluido en el rol sysadmin. A la luz de lo anterior, si no se devuelven filas, esto significa que los contadores de perfmon no están instalados.