Поделиться через


DBCC SQLPERF (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр 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 ]

Аргументы

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) Текущий размер, выделенный для журнала. Это значение всегда меньше объема, выделенного для пространства журнала, так как ядро СУБД резервирует небольшое количество дискового пространства для внутренних сведений заголовка.
Log Space Used (%) Доля (в процентах) файла журнала, используемого для хранения сведений журнала транзакций.
Состояние Состояние файла журнала. Всегда равно 0.

Замечания

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

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

Разрешения

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

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

Примеры

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

В следующем примере отображаются 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

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

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

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

См. также