Delen via


DBCC SQLPERF (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Biedt gebruiksstatistieken voor transactielogboekruimte voor alle databases. In SQL Server kan het ook worden gebruikt om wacht- en vergrendelingsstatistieken opnieuw in te stellen.

van toepassing op: SQL Server 2008 (10.0.x) en latere versies, en SQL Database (Preview in sommige regio's)

Transact-SQL syntaxisconventies

Syntaxis

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

Argumenten

LOGSPACE

Retourneert de huidige grootte van het transactielogboek en het percentage logboekruimte dat voor elke database wordt gebruikt. Gebruik deze informatie om de hoeveelheid ruimte te bewaken die wordt gebruikt in een transactielogboek.

Belangrijk

Zie de sectie Opmerkingen in dit onderwerp voor meer informatie over informatie over het gebruik van ruimte voor het transactielogboek vanaf SQL Server 2012 (11.x).

"sys.dm_os_latch_stats", CLEAR

Hiermee stelt u de vergrendelingsstatistieken opnieuw in. Zie sys.dm_os_latch_stats (Transact-SQL)voor meer informatie. Deze optie is niet beschikbaar in SQL Database.

"sys.dm_os_wait_stats", CLEAR

Hiermee stelt u de wachtstatistieken opnieuw in. Zie sys.dm_os_wait_stats (Transact-SQL)voor meer informatie. Deze optie is niet beschikbaar in SQL Database.

MET NO_INFOMSGS

Onderdrukt alle informatieve berichten met ernstniveaus van 0 tot en met 10.

Resultatensets

In de volgende tabel worden de kolommen in de resultatenset beschreven.

Kolomnaam Definitie
databasenaam De naam van de database voor de weergegeven logboekstatistieken.
logboekgrootte (MB) De huidige grootte die aan het logboek is toegewezen. Deze waarde is altijd kleiner dan het bedrag dat oorspronkelijk is toegewezen voor logboekruimte, omdat de database-engine een kleine hoeveelheid schijfruimte reserveert voor interne headergegevens.
gebruikte logboekruimte (%) Percentage van het logboekbestand dat momenteel wordt gebruikt om transactielogboekgegevens op te slaan.
status Status van het logboekbestand. Altijd 0.

Opmerkingen

Gebruik vanaf SQL Server 2012 (11.x) de sys.dm_db_log_space_usage DMV in plaats van DBCC SQLPERF(LOGSPACE)om ruimtegebruiksgegevens voor het transactielogboek per database te retourneren.

In het transactielogboek wordt elke transactie vastgelegd die in een database is gemaakt. Zie The Transaction Log (SQL Server) en SQL Server Transaction Log Architecture and Management Guidevoor meer informatie.

Machtigingen

SQL Server vereist MACHTIGING SERVERSTATUS WEERGEVEN op de server om DBCC SQLPERF(LOGSPACE)uit te voeren. Voor het opnieuw instellen van wacht- en vergrendelingsstatistieken is ALTER SERVER STATE machtiging op de server vereist.

Voor SQL Database Premium- en Bedrijfskritieke lagen is de machtiging VIEW DATABASE STATE in de database vereist. Voor de lagen SQL Database Standard, Basic en Algemeen gebruik is het SQL Database-beheerdersaccount vereist. Wachtherstel en vergrendelingsstatistieken worden niet ondersteund.

Voorbeelden

Een. Informatie over logboekruimte weergeven voor alle databases

In het volgende voorbeeld wordt LOGSPACE informatie weergegeven voor alle databases in het exemplaar van SQL Server.

DBCC SQLPERF (LOGSPACE);
GO

Dit is de resultatenset.

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. Wachtstatistieken opnieuw instellen

In het volgende voorbeeld worden de wachtstatistieken voor het exemplaar van SQL Server opnieuw ingesteld.

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

Zie ook