Condividi tramite


DBCC SQLPERF (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Fornisce statistiche relative all'utilizzo dello spazio nel log delle transazioni per tutti i database. Può anche essere usato per resettare le statistiche di attesa e latch.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

DBCC SQLPERF
(
     [ LOGSPACE ]
     | [ "sys.dm_os_latch_stats" , CLEAR ]
     | [ "sys.dm_os_wait_stats" , CLEAR ]
)
     [ WITH NO_INFOMSGS ]

Argomenti

LOGSPACE

Restituisce la dimensione corrente del log delle transazioni e la percentuale di spazio del log utilizzata per ogni database. Usare queste informazioni per monitorare la quantità di spazio usato in un log delle transazioni.

Importante

Per ulteriori informazioni sull'uso dello spazio per il registro delle transazioni a partire da SQL Server 2012 (11.x), consulta la sezione Osservazioni in questo articolo.

"sys.dm_os_latch_stats", CHIARO

Reimposta le statistiche relative ai latch. Per maggiori informazioni, vedi sys.dm_os_latch_stats.

"sys.dm_os_wait_stats", CHIARO

Reimposta le statistiche relative alle attese. Per altre informazioni, vedere sys.dm_os_wait_stats.

CON NO_INFOMSGS

Evita la visualizzazione di tutti i messaggi informativi con livello di gravità compreso tra 0 e 10.

Set di risultati

Nella tabella seguente vengono descritte le colonne del set di risultati.

Nome colonna Definizione
Nome database Nome del database a cui si riferiscono le statistiche del log visualizzate.
Dimensione del Log (MB) Dimensione corrente allocata al log. Questo valore è sempre inferiore rispetto alla quantità di spazio allocata inizialmente per il log in quanto il motore di database riserva una piccola quantità di spazio su disco per informazioni di intestazione interne.
Spazio logaritmico utilizzato (%) Percentuale del file di log attualmente usata per archiviare informazioni del log delle transazioni.
Stato Stato del file di log. Sempre 0.

Osservazioni:

A partire da SQL Server 2012 (11.x) usare la DMV sys.dm_db_log_space_usage anziché DBCC SQLPERF(LOGSPACE) per restituire informazioni sull'uso dello spazio per il log transazioni di ogni database.

Nel log delle transazioni viene registrata ogni transazione eseguita in un database. Per ulteriori informazioni, consulta Il registro delle transazioni e la guida all'architettura e gestione dei log delle transazioni di SQL Server.

Autorizzazioni

SQL Server richiede VIEW SERVER STATE il permesso sul server per essere eseguito DBCC SQLPERF(LOGSPACE). Per reimpostare le statistiche relative a latch e attese è richiesta l'autorizzazione ALTER SERVER STATE per il server.

I livelli SQL Database Premium e Business Critical richiedono il VIEW DATABASE STATE permesso nel database. database SQL livelli Standard, Basic e Per utilizzo generico richiedono l'account amministratore database SQL.

Esempi

R. Visualizzare le informazioni sullo spazio dei log per tutti i database

Nell'esempio seguente vengono visualizzate le informazioni relative a LOGSPACE per tutti i database inclusi nell'istanza di SQL Server.

DBCC SQLPERF (LOGSPACE);
GO

Il set di risultati è il seguente.

Database Name Log Size (MB) Log Space Used (%) Status
------------- ------------- ------------------ -----------
master         3.99219      14.3469            0
tempdb         1.99219      1.64216            0
model          1.0          12.7953            0
msdb           3.99219      17.0132            0
AdventureWorks 19.554688    17.748701          0

B. Reimpostare le statistiche di attesa

Nell'esempio seguente vengono reimpostate le statistiche relative alle attese per l'istanza di SQL Server.

DBCC SQLPERF ("sys.dm_os_wait_stats", CLEAR);