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