У меня есть два сервера под управлением Microsoft SQL 2008, и я использую репликацию слиянием. Он использует принудительную подписку. На днях произошло событие, из-за которого в базу данных было вставлено больше строк, чем обычно. От 5 000 до 10 000 строк было бы вставлено в три таблицы в течение 5 минут. В следующие 14 часов я получил около 80 писем с таким сообщением об ошибке:
Агенту слияния не удалось получить информацию о статье для публикации "Lynx". Увеличьте параметр -QueryTimeOut и перезапустите синхронизацию. При устранении неполадок используйте SQL Profiler или перезапустите агент с более высоким значением для -HistoryVerboseLevel a
После перезапуска агента и повторной инициализации репликации ошибки прекратились.
Итак, как мне увеличить параметр -QueryTimeOut? И поможет ли это предотвратить это в будущем?
Похоже, вы можете сделать это из Replication Monitor (щелкните правой кнопкой мыши узел «Replication» в Management Studio и выберите Launch Replication Monitor).
Выберите свою публикацию, щелкните правой кнопкой мыши подписку в списке справа и выберите «Профиль агента». Вы можете отредактировать «Профиль агента по умолчанию» или создать новый. В любом случае вы можете изменить параметр -QueryTimeout, щелкнув маленькую кнопку с многоточием для редактирования профиля.
Отказ от ответственности: мне никогда не приходилось менять это, но это, безусловно, выглядит многообещающим.