Database Mirroring Monitor — это часть SQL Server Monitor, которую можно запустить в SQL Server Management Studio.
Если у вас настроено зеркалирование базы данных, то вы можете посмотреть как идёт процесс синхронизации между основной и зеркальной БД.
- Зеркалирование двух серверов друг на друга в Microsoft SQL Server 2019
- Настройка зеркалирования в Microsoft SQL Server 2014
- Настройка зеркалирования в Microsoft SQL Server 2019
Для запуска оснастки Database Mirroring Monitor нужно нажать правой кнопкой на зеркалируемую базу, Tasks → Launch Database Mirroring Monitor.
Открывается оснастка Database Mirroring Monitor. Если вам нужно добавить в мониторинг ещё базы, то Action → Register Mirrored Database. Данные обновляются автоматически каждый 30 секунд.
Если у вас есть соответствующие права, то проверить, насколько хорошо данные передаются в сеансе зеркалирования базы данных. Чтобы отслеживать зеркалирование базы данных, вы должны быть членом фиксированной роли сервера sysadmin или фиксированной роли базы данных dbm_monitor в базе данных msdb на экземпляре сервера.
Ожидаемое время синхронизации в приведённом примере 1 час 41 минута. Не восстановлено 172 ГБ логов.
Статусы:
- Warning Unknown — монитор не подключен ни к одному из партнеров.
- Warning Synchronizing — содержимое зеркальной базы данных отстает от содержимого основной базы данных (на скриншоте выше).
- Warning Suspended — основная база данных доступна, но не отправляет журналы на зеркальный сервер.
- Standard Synchronized — когда зеркальный сервер становится достаточно синхронизирован с основным сервером, состояние базы данных изменяется на Synchronized.
- Error Disconnected — экземпляр сервера не может подключиться к своему партнеру.
На вкладке Warnings администратор БД может просматривать предупреждения о текущей конфигурации. Отсюда администратор может запустить диалоговое окно Установка порогов предупреждений для включения и настройки одного или более порогов предупреждений.
С помощью мониторинга зеркально отображаемой базы данных можно выполнить следующее.
- Проверить работу зеркалирования. Основное состояние включает сведения о том, работают ли два экземпляра сервера, соединены ли серверы, перемещается ли журнал с основного сервера на зеркальный.
- Определить, согласована ли зеркальная база данных с основной базой данных. В высокопроизводительном режиме основной сервер может создавать очередь неотправленных записей журнала, которые требуется отправить с основного сервера на зеркальный. Более того, в любом режиме работы зеркальный сервер может создавать очередь записей журнала, которые были записаны в файл журнала, но все еще нуждаются в восстановлении в зеркальной базе данных.
- Определить, сколько данных было потеряно, пока экземпляр основного сервера оставался недоступным в высокопроизводительном режиме. Можно определить потерю данных, посмотрев объем неотправленного журнала транзакций (при наличии) и интервала времени, в течение которого потерянные транзакции были зафиксированы на основном сервере.
- Сравнить текущую производительность с прежней производительностью. В случае возникновения ошибок администратор базы данных может просмотреть историю производительности зеркального отображения, чтобы понять текущее состояние. Просмотр истории может позволить пользователю определить тенденции роста или снижения производительности, определить модели ошибок производительности (такие как время дня, когда у сети низкая пропускная способность или количество команд, входящих в журнал, слишком большое).
- Устранить причину снижения потока данных между участниками зеркального отображения.
- Установить пороги предупреждений для ключевых метрик производительности. Если новая строка состояния содержит значение, превышающее порог, в журнал событий Windows записывается информационное событие. Системный администратор может вручную настроить предупреждения по этим событиям.
Хранимые процедуры
Состояние зеркального отображения можно контролировать с помощью системной хранимой процедуры sp_dbmmonitorresults. Её могут использовать как системные администраторы (члены предопределенной роли сервера sysadmin), так и пользователи, добавленные в предопределенную роль dbm_monitor базы данных msdb системным администратором.
Другие хранимые процедуры из группы dbmmonitor позволяют настраивать мониторинг, изменять его параметры, просматривать текущий период обновления и отменять мониторинг на экземпляре сервера.