DBCC SQLPERF (Transact-SQL)

Применимо к:База данныхSQL Server Azure SQL Управляемый экземпляр SQL Azure

Выдает статистику использования места, занятого журналом транзакций на диске, для всех баз данных. В SQL Server его также можно использовать для сброса статистики ожидания и кратковременных блокировок.

Область применения: SQL Server 2008 (10.0.x) и более поздних версий, а также База данных SQL (предварительная версия в некоторых регионах)

Соглашения о синтаксисе Transact-SQL

Синтаксис

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

Примечание

Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.

Аргументы

LOGSPACE

Возвращает текущий размер журнала транзакций и процент пространства журнала, используемого для каждой базы данных. С помощью этих данных можно контролировать используемое пространство в журнале транзакций.

Важно!

Дополнительные сведения об использовании пространства для журнала транзакций, начиная с SQL Server 2012 (11.x), см. в разделе Примечания этого раздела.

"sys.dm_os_latch_stats", CLEAR

Сбрасывает статистику кратковременных блокировок. Дополнительные сведения см. в статье sys.dm_os_latch_stats (Transact-SQL). Этот параметр недоступен в База данных SQL.

"sys.dm_os_wait_stats", CLEAR

Сбрасывает статистику ожидания. Для получения дополнительной информации см. sys.dm_os_wait_stats (Transact-SQL). Этот параметр недоступен в База данных SQL.

WITH NO_INFOMSGS

Подавляет все информационные сообщения со степенями серьезности от 0 до 10.

Наборы результатов

В следующей таблице отображены столбцы результирующего набора.

Имя столбца Определение
Имя базы данных Имя базы данных, которой соответствует отображаемая статистика журнала.
Log Size (MB) Текущий размер, выделенный для журнала. Этот значение всегда меньше объема, исходно выделенного для журнала, так как компонент Компонент Database Engine резервирует небольшую часть места на диске для внутренних данных заголовка.
Log Space Used (%) Доля (в процентах) файла журнала, используемого для хранения сведений журнала транзакций.
Состояние Состояние файла журнала. Всегда равно 0.

Remarks

Начиная с версии SQL Server 2012 (11.x) используйте динамическое административное представление sys.dm_db_log_space_usageDBCC SQLPERF(LOGSPACE) для просмотра сведений об использовании пространства для журнала транзакций в каждой базе данных.

В журнале транзакций записывается каждая транзакция, выполненная в базе данных. Дополнительные сведения см. в разделах Журнал транзакций (SQL Server) и Руководство по архитектуре и управлению журналом транзакций SQL Server.

Разрешения

SQL Server требуется разрешение VIEW SERVER STATE на сервере для запуска DBCC SQLPERF(LOGSPACE). Для сброса статистики кратковременных блокировок и ожидания необходимо разрешение ALTER SERVER STATE на сервер.

База данных SQL уровнях Premium и критически важный для бизнеса требуется разрешение VIEW DATABASE STATE в базе данных. База данных SQL уровнях "Стандартный", "Базовый" и общего назначения требуется учетная запись администратора База данных SQL. Сброс статистики ожидания и кратковременных блокировок не поддерживается.

Примеры

A. Отображение сведений о пространстве журнала для всех баз данных

В следующем примере выводятся сведения LOGSPACE для всех баз данных, содержащихся в экземпляре SQL Server.

DBCC SQLPERF (LOGSPACE);
GO

Результирующий набор:

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

Б. Сброс статистики ожидания

В следующем примере сбрасывается статистика ожидания для экземпляра SQL Server.

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

См. также