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


sys.dm_cdc_log_scan_sessions (Transact-SQL)

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

Имя столбца

Тип данных

Описание

session_id

int

Идентификатор сеанса.

Значение 0 в данной строке означает, что возвращаемые данные представляют собой статистику всех сеансов с момента последнего запуска SQL Server.

start_time

datetime

Время начала сеанса.

При session_id = 0 содержит время начала сбора статистики.

end_time

datetime

Время окончания сеанса.

NULL = сеанс активен.

При session_id = 0 содержит время окончания последнего сеанса.

duration

bigint

Продолжительность сеанса в секундах.

Значение 0 означает, что сеанс не содержит транзакций системы отслеживания измененных данных.

При session_id = 0 содержит суммарную длительность (в секундах) всех сеансов, содержащих транзакции системы отслеживания измененных данных.

scan_phase

nvarchar(200)

Текущая стадия сеанса. Это может быть:

СтадияОписание
1Считывание конфигурации
2Первый просмотр, построение хэш-таблицы.
3Второй просмотр
4Второй просмотр
5Второй просмотр
6Определение версии схемы
7Последний просмотр
8Готово

При server_id = 0, это значение всегда имеет значение "Aggregate" (статистика).

error_count

int

Количество обнаруженных ошибок.

При session_id = 0 содержит общее количество ошибок во всех сеансах.

start_lsn

nvarchar(23)

Начальный номер LSN для сеанса.

При session_id = 0 содержит начальный номер LSN последнего сеанса.

current_lsn

nvarchar(23)

Текущий номер LSN, который был просмотрен.

При session_id = 0 текущий номер LSN равен 0.

end_lsn

nvarchar(23)

Конечный номер LSN сеанса.

NULL = сеанс активен.

При session_id = 0 содержит конечный номер LSN последнего сеанса.

tran_count

bigint

Количество проведенных транзакций системы отслеживания измененных данных. Этот счетчик заполняется на второй стадии.

При session_id = 0 содержит количество транзакций, проведенных в течение всех сеансов.

last_commit_lsn

nvarchar(23)

Номер LSN последней обработанной записи в журнале фиксирования.

При session_id = 0 содержит номер LSN последней записи в журнале фиксирования для любого сеанса.

last_commit_time

datetime

Время последней обработки записи в журнале фиксирования.

При session_id = 0 содержит время последней обработки записи в журнале фиксирования для любого сеанса.

log_record_count

bigint

Количество просмотренных записей журнала.

При session_id = 0 содержит количество просмотренных записей журнала во всех сеансах.

schema_change_count

int

Количество обнаруженных операций языка DDL. Значение данного счетчика заполняется на шестой стадии.

При session_id = 0 содержит количество операций языка DDL, проведенных в течение всех сеансов.

command_count

bigint

Количество выполненных команд.

При session_id = 0 содержит количество команд, выполненных в течение всех сеансов.

first_begin_cdc_lsn

nvarchar(23)

Первый номер LSN, содержащий транзакции системы отслеживания измененных данных.

При session_id = 0 содержит первый номер LSN, содержащий транзакции системы отслеживания измененных данных.

last_commit_cdc_lsn

nvarchar(23)

Номер LSN последней записи в журнале фиксирования, содержащей транзакции системы отслеживания измененных данных.

При session_id = 0 содержит номер LSN последней записи в журнале фиксирования, содержащей транзакции системы отслеживания измененных данных для любого сеанса.

last_commit_cdc_time

datetime

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

При session_id = 0 содержит время обработки последней записи в журнале фиксирования, содержащей транзакции системы отслеживания измененных данных для любого сеанса.

latency

int

Разница (в секундах) между значениями end_time и last_commit_cdc_time данного сеанса. Этот счетчик заполняется в конце седьмой стадии.

При session_id = 0 содержит последнее ненулевое значение задержки, записанное сеансом.

empty_scan_count

int

Количество последовательных сеансов, не содержащих транзакций системы отслеживания измененных данных.

failed_sessions_count

int

Число сеансов, завершившихся неудачно.

Замечания

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

Разрешения

Для работы с динамическим административным представлением sys.dm_cdc_log_scan_sessions требуется разрешение VIEW DATABASE STATE. Дополнительные сведения о предоставлении разрешений для динамических административных представлений см. в разделе Динамические административные представления и функции (Transact-SQL).

Примеры

В следующем примере возвращается информация о самом последнем сеансе.

USE AdventureWorks2008R2;
GO
SELECT *
FROM sys.dm_cdc_log_scan_sessions
WHERE session_id = (SELECT MAX(b.session_id) from sys.dm_cdc_log_scan_sessions AS b);
GO

См. также

Справочник