Транспорт Always On Availability Groups обнаружил отсутствующий блок журнала для базы данных доступности.
Кто-нибудь еще сталкивался с этим раньше? Как это было решено в вашем случае? Было ли это вызвано факторами вне SQL Server т.е. сетевой транспорт между репликами (первичный или вторичный) или хранилище ввода-вывода?
Я попытался спросить команду инфраструктуры, могут ли они проверить в VMWare vCenter какой-либо тип политики QoS или DRS, чтобы предотвратить дросселирование или перетасовку виртуальной машины.
Эта конкретная виртуальная машина является внешним узлом в режиме ASYNC. Сообщение появляется в разное время дня и для нескольких БД. В основном происходит один раз в день, но иногда до 4 раз в день. Интервалы т.е. 3-6 утра, 10 утра до 12 вечера. Появляется в зависимости от активной рабочей нагрузки на основном узле. Это всего лишь информационное сообщение, и после этого синхронизация проходит хорошо.
-----Оригинал сообщения-----
От: Не отвечай
Отправлено: пятница, 11 августа 2017 г., 3:37
Кому: Хирам
Тема: Система оповещения SQL Server: "Другие пользовательские ошибки" произошли на \SVRSQL02
ДАТА / ВРЕМЯ: 8/11/2017 3:36:43 утра
ОПИСАНИЕ: Транспорт Always On Availability Groups обнаружил отсутствующий блок журнала для базы данных доступности "MyDB". LSN последнего примененного блока журнала: (69168:224114:0). Сканирование журнала будет перезапущено для устранения проблемы. Это только информационное сообщение. От пользователя не потребуется никаких действий.
КОММЕНТАРИЙ: (Нет)
РАБОТА РАБОТЫ: (нет)
Я рассмотрел возможность включения traceflag 9587 для возврата AG к последовательной обработке, но, похоже, это ухудшит производительность.
Низкая пропускная способность транзакций в основной реплике Always On Availability Group
Симптомы: при настройке групп доступности всегда в SQL Server 2016 могут возникать периодические периоды низкой пропускной способности. Вы также можете заметить длительное время ожидания для процесса HADR_SYNC_COMMIT, когда возникает эта проблема.
Кроме того, журнал ошибок на экземпляре вторичной реплики сообщает о следующей ошибке:
Ошибка: 19432, уровень серьезности: 16, состояние: 0 Транспорт всегда включен. Группы доступности обнаружили отсутствующий блок журнала для базы данных доступности "". LSN последнего примененного блока журнала: (xxx:xxxxxxxx:x). Сканирование журнала будет перезапущено для устранения проблемы. Это только информационное сообщение. От пользователя не потребуется никаких действий.
Обходной путь: Чтобы обойти эту проблему, добавьте флаг трассировки 9587 в качестве параметра запуска для экземпляров реплики, которые участвуют в конфигурации группы "Всегда в наличии".
Будущее обновление для SQL Server устранит необходимость использования флага трассировки 9587. Этот флаг заставляет транспортный уровень для групп доступности возвращаться к последовательной обработке, что отключает улучшения производительности для групп Always On Availability в SQL Server 2016. Если только вы не используете При возникновении проблем, описанных в разделе "Проблема", мы не рекомендуем применять флаг трассировки 9587.
Свойства: ID статьи: 3201336 - Последний отзыв: 25 октября 2016 - Редакция: 1
Применяется к: Microsoft SQL Server 2016 Standard, Microsoft SQL Server 2016 Enterprise, Microsoft SQL Server 2016 Developer