Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Затыкается репликация транзакций  [new]
Talya
Member

Откуда: Москва
Сообщений: 12
Из-за плохого канала периодически останавливаются Distribution Agent-ы. В Replication Monitor-е пишется The agent in suspect. No response... (Да, я читала все, что по этим словам
есть на форуме. )
Cудя по всему, агент именно останавливается - т.е. пока его из Enterprise Maneger вручную Start Agent-ом не запустишь, никакие обновления не происходят.
Вопрос - как ловить такую ситуацию и перезапускать агенты автоматически? Отдельным job-ом/ дополнительным step-ом в самом агенте (тогда что в них писать), еще как-то?
28 фев 06, 15:55    [2399812]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Отдельным джобом, если это вообще поможет.
28 фев 06, 16:00    [2399848]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Talya
Member

Откуда: Москва
Сообщений: 12
А как? Что в это job-e писать-то?
28 фев 06, 16:18    [2399981]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
Сделайте новый step для Distributor Agent'а. Он должен быть 3-м (за step'ом Run Agent). В нем команды:
master.dbo.xp_cmdshell N'net send Talya "Упал Distributor Agent"',no_output
waitfor delay '00:00:05' -- пять минут задержка
Для этого шага устанавливаете On Success action равное Goto step: 2.
28 фев 06, 17:11    [2400304]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Talya
Member

Откуда: Москва
Сообщений: 12
Спасибо, но как бы сделать чтобы он не просто алерт отправлял, а сам агента перезапускал?
1 мар 06, 12:24    [2403110]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Если агент именно завершает работу с ошибкой, и вы абсолютно уверены, что эта ошибка лечится перезапуском агента, а не является, к примеру, следствием падения сети или ошибкой в данных, и т.д., то действительно, можно добавить дополнительный шаг в тот же самый джоб. В этом самом шаге, как и написал Prolog
Prolog
Для этого шага устанавливаете On Success action равное Goto step: 2

Это и есть перезапуск агента. Вы посмотрите, второй шаг (куда переходим) что собой представляет.

Вот если агент виснет, не завершается, то никакой дополнительный шаг никак помочь не может, потому что до него дело не дойдет. В этом случае можно завести другой джоб, не шаг, а джоб, который будет проверять состояние нужного агента и стартовать его, если он застоплен.

А вообще самое лучшее - разобраться, почему агент перестает отвечать. Может, надо причину лечить, а не умирающего пинать ;-)
1 мар 06, 12:40    [2403237]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
GreenSunrise
Вот если агент виснет, не завершается, то никакой дополнительный шаг никак помочь не может, потому что до него дело не дойдет. В этом случае можно завести другой джоб, не шаг, а джоб, который будет проверять состояние нужного агента и стартовать его, если он застоплен.

Вернее, даже не совсем так. Не "запущен - не запущен" проверять, потому что вне зависимости от того, висит он или нет, статус будет "running", а именно наличие сообщения "The agent in suspect...", и только в этом случае рестартовать.
1 мар 06, 12:43    [2403257]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Talya
Member

Откуда: Москва
Сообщений: 12
Да, агент перестает отвечать именно из-за проблем с сетью, но когда сеть поднимается - он без пинка сам не стартует. После ручного Start Agent-а проходит нормально.

А как проверить состояние агента?
1 мар 06, 12:44    [2403268]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Prolog
Member

Откуда: Москва
Сообщений: 2791
А что в Job History и Error Details этого job'а? После задержки в 3 шаге второй шаг начинает работать?
1 мар 06, 16:47    [2405004]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
Talya
Member

Откуда: Москва
Сообщений: 12
Шаг там только один пока - запуск агента
В Error Details тот самый The agent in suspect. No response
1 мар 06, 16:49    [2405012]     Ответить | Цитировать Сообщить модератору
 Re: Затыкается репликация транзакций  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Talya
Шаг там только один пока - запуск агента

Ну так добавьте еще один! Я ж вам говорю - сперва выясняем, ЗАВЕРШАЕТ ли выполнение агент или ВИСНЕТ. Потом делаем решение. Вот и выясняйте.
2 мар 06, 11:45    [2407721]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить