Perché l'aspettativa di vita della pagina è 0 (zero) su SQL Server 2005


8

Volevamo conoscere l'aspettativa di vita della pagina per il nostro SQL Server. Quindi guardiamo il contatore usando Perform. Il valore è ZERO e non cambia mai. Ho pensato che ci dovesse essere qualche bug, quindi ho controllato la query DMV di SQL Server

SELECT [object_name],[counter_name],[cntr_value]
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%Manager%'
AND [counter_name] = 'Page life expectancy'

Anche questo restituisce zero, per tutto il giorno.

Per renderlo più interessante, abbiamo controllato il contatore del "rapporto di buffer cache buffer", con una media di circa 99-100.

Quindi, in che modo l'aspettativa di vita della pagina è zero mentre il 'rapporto di buffer cache buffer' è 100?

Cosa ci manca? se è sempre zero, significherebbe per me che nulla rimane nella cache del buffer, il che sembra errato se il rapporto di risultati della cache del buffer è 100?

Grazie in anticipo

Risposte:


4

Vorrei iniziare facendo i passaggi descritti qui:

Come ricostruire i contatori delle prestazioni di un'istanza di SQL Server 2005 o 2008

Aggiornamento agosto 2015: il link sopra appare interrotto . Riferimento alternativo:

Risoluzione dei problemi: SQL Server (2005, 2008) Performance Counter Collection Problems (CSS)

Passaggi essenziali dalla risorsa collegata

Utilizzando un prompt dei comandi dell'amministratore elevato, procedere come segue.

  1. Modificare il percorso nella BINNdirectory dell'istanza di SQL Server che si desidera correggere.
    (Es: C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\Binn)
  2. Eseguire unlodctr <<REGISTERED SERVER NAME>>
    Ad esempio: unlodctr MSSQL$SQL2008oppure SQLAgent$SQL2008...
  3. Eseguire lodctr /T:<<perf-sql* matching the counters you desire to load>>
    Ad esempio: perf-MSSQL$SQL2008sqlctr.inio perf-SQLAgent$SQL2008sqlagtctr.iniper SQLAgent. Il /Tè importante caricare il provider di contatore delle prestazioni di SQL Server come un fornitore di fiducia .
  4. Ciclo del servizio di registro remoto:
    net stop "Remote Registry"quindinet start "Remote Registry"
  5. Forzare una sincronizzazione WMI utilizzando winmgmt /resyncperfctr "<<PID>>"
    dove PID è l'ID del processo WinPriv.exe(è possibile ottenerlo da Task Manager)

Inoltre, da questa risorsa , può essere richiesto anche quanto segue:

  • Assicurarsi che siano state concesse le autorizzazioni di sicurezza corrette alla HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009
    chiave di registro:

    1. Concedere le autorizzazioni di controllo completo all'account del proprietario del creatore.
    2. Concedere le autorizzazioni di controllo completo all'account amministratori.
    3. Concedere le autorizzazioni di lettura agli amministratori SQL su quella casella / nodo.
    4. Concedere le autorizzazioni di controllo completo all'account di sistema
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.