Мониторинг доставки журналов транзакций (Transact-SQL)

Область применения:SQL Server

После того, как была настроена доставка журналов, можно отслеживать данные о состоянии всех серверов доставки журналов. История и состояние операций переноса журналов транзакций всегда сохраняются локально заданиями переноса журналов транзакций. Журнал и состояние операций резервного копирования сохраняются на сервере-источнике, а журнал и состояние операций копирования и восстановления сохраняются на сервере-получателе. Если был реализован удаленный сервер мониторинга, эти данные также сохраняются и на нем.

Можно настраивать предупреждения, которые работают в случае сбоев при выполнении операций доставки журналов по расписанию. Ошибки регистрируются заданием оповещения, которое отслеживает состояние операций резервного копирования и восстановления. Можно определить предупреждения, которые отправят сообщение оператору при возникновении таких ошибок. Если сервер мониторинга настроен, на сервере мониторинга выполняется одно задание оповещения, которое выдает сообщения об ошибках для всех операций в конфигурации доставки журналов. Если сервер мониторинга не указан, задание предупреждения выполняется на экземпляре сервера-источника, который отслеживает операции резервного копирования. Если сервер мониторинга не указан, задание оповещения также выполняется на каждом вторичном экземпляре сервера для мониторинга локальных операций копирования и восстановления.

Внимание

Чтобы отслеживать конфигурацию доставки журналов, во время включения доставки журналов необходимо добавить сервер мониторинга. Если добавлять сервер мониторинга позже, то придется удалить существующую конфигурацию доставки журналов и заменить ее новой с сервером мониторинга. Дополнительные сведения см. в разделе Настройка доставки журналов (SQL Server). Кроме того, заданную конфигурацию сервера мониторинга невозможно изменить, не удалив прежде конфигурацию доставки журналов.

Таблицы истории с информацией мониторинга

Таблицы журналов мониторинга содержат метаданные, хранящиеся на сервере мониторинга. Копия данных, относящихся именно к данному серверу-источнику или серверу-получателю, также хранится локально.

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

Таблица Описание
log_shipping_monitor_alert Хранит идентификатор задания оповещения.
log_shipping_monitor_error_detail Содержит подробное описание ошибок заданий доставки журналов. Можно выполнить запрос к этой таблице, чтобы просмотреть ошибки для сеанса агента. При необходимости можно выполнить сортировку ошибок по дате и времени их внесения в журнал. Каждая ошибка записывается в журнал как последовательность исключений, и на один сеанс агента может приходиться несколько ошибок (последовательностей).
log_shipping_monitor_history_detail Содержит сведения об истории агентов доставки журналов. Выполнив запросы к этой таблице, можно получить подробные сведения о предыдущих сеансах агентов.
log_shipping_monitor_primary Содержит одну запись монитора для базы данных-источника в каждой из конфигураций доставки журналов, включая данные о последнем файле резервной копии и о последнем восстановленном файле, которые полезны для мониторинга.
log_shipping_monitor_secondary Содержит по одной записи мониторинга для каждой вторичной базы данных, включая сведения о последнем файле резервной копии и последнем восстановленном файле, полезные для мониторинга.

Хранимые процедуры для мониторинга доставки журналов

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

Хранимая процедура Описание Выполните эту процедуру на
sp_help_log_shipping_monitor_primary Возвращает записи мониторинга для указанной основной базы данных из таблицы log_shipping_monitor_primary. Сервер мониторинга или основной сервер
sp_help_log_shipping_monitor_secondary Возвращает записи мониторинга для указанной вторичной базы данных из таблицы log_shipping_monitor_secondary. Сервер мониторинга или вторичный сервер
sp_help_log_shipping_alert_job Возвращает идентификатор задания оповещения. Сервер мониторинга или основной либо вторичный сервер, если сервер мониторинга не определен
sp_help_log_shipping_primary_database, хранимая процедура Получает настройки базы данных-источника и отображает значения из таблиц log_shipping_primary_databases и log_shipping_monitor_primary . Основной сервер
sp_help_log_shipping_primary_secondary Получает имена вторичных баз данных для первичной базы данных. Основной сервер
sp_help_log_shipping_secondary_database, хранимая процедура Получает параметры вторичной базы данных из таблиц log_shipping_secondary, log_shipping_secondary_databases и log_shipping_monitor_secondary. Вторичный сервер
sp_help_log_shipping_secondary_primary (Transact-SQL) Эта хранимая процедура извлекает параметры для указанной основной базы данных на вторичном сервере. Вторичный сервер