MSSQL_ENG020554
Область применения: SQL Server Управляемый экземпляр SQL Azure
Сведения о сообщении
Атрибут | Значение |
---|---|
Название продукта | SQL Server |
ИД события | 20554 |
Источник событий | MSSQLSERVER |
Компонент | Компонент SQL Server Database Engine |
Символическое имя | |
Текст сообщения | Агент репликации не зарегистрировал сообщение о ходе выполнения в течение %ld минут. Это может указывать на то, что агент не отвечает, либо на высокую загрузку системы. Убедитесь, что записи реплицируются по назначению, а подключения к подписчику, издателю и распространителю все еще активны. |
Описание
Задание Проверка агентов репликации выполняется с заданным интервалом (по умолчанию — 10 минут) для проверки состояния каждого агента репликации. Если с момента последней проверки контрольной суммы агентом в журнале не было сделано записей о сообщениях о выполнении, вызывается ошибка MSSQL_ENG020554. Предполагается, что агент записывает записи в журнал, даже если действий по репликации не производится. Но если агент репликации не реагирует, как положено, из этого не следует, что он был остановлен или что в его работе произошел сбой (если в работе агента произошел сбой, вызывается ошибка MSSQL_ENG020536).
К возникновению ошибки MSSQL_ENG020554 могут привести следующие причины:
Агент занят.
Если агент слишком занят, чтобы ответить на опрос во время проверки, в отчете задания по проверке невозможно отметить, верно ли функционирует агент. Причиной занятости агента может быть репликация большого количества данных или неправильная конструкция или конфигурация приложения, в результате которой процессы выполняются очень долго.
Агент не может вести записи в журнал на одном из компьютеров в данной топологии.
У всех агентов есть параметр -LoginTimeOut (по умолчанию задано 15 секунд), определяющий время, в течение которого агент предпринимает попытки входа на узел репликации (например, вход агента слияния на узел издателя). Если значение параметра -LoginTimeOut превышает интервал проверки агента репликации, проблема со входом может стать основной причиной ошибки: ошибка MSSQL_ENG020554 возникает прежде, чем агент может сформировать более конкретную ошибку.
Действие пользователя
Необходимые действия зависят от причины возникновения ошибки.
Во всех случаях возникновения данной ошибки:
Следует проверить подробные сведения об ошибке в мониторе репликации и перезапустить агент, если он был остановлен. В подробных сведениях об ошибке может содержаться дополнительная информация о причинах неверного поведения агента. Если агент до сих пор работает, останавливать и перезапускать его не следует, поскольку это может ухудшить проблему. Сведения о просмотре состояния агента и сведений об ошибках в мониторе репликации см. в статье Просмотр сведений и выполнение задач с помощью монитора репликации.
В случае частого возникновения данной ошибки из-за занятости агента:
Может потребоваться перепроектирование приложения таким образом, чтобы агенту требовалось меньше времени на обработку.
С помощью диалогового окна Свойства задания можно увеличить интервал проверки состояния агента. Сведения о доступе к этому диалоговому окну для заданий репликации см. в статье Просмотр сведений и выполнение задач с помощью монитора репликации.
Агент не может вести записи в журнал на одном из компьютеров в данной топологии.
Рекомендуем устанавливать значение параметра -LoginTimeOut меньше, чем интервал проверки агента репликации. В некоторых случаях значение - LoginTimeOut устанавливается выше из-за проблем с сетью, которые вызывают истечение времени ожидания входа. Если параметр -LoginTimeOut установлен ниже, репликация может сообщать о более конкретных ошибках, позволяя устранять проблемы входа, которые могут быть вызваны разрешениями, проблемами сети или другими проблемами. Параметры агента могут задаваться в профилях агента или в командной строке. Дополнительные сведения см. в разделе: