Как получить dbmail для обработки элементов из очереди для SQL Server 2005? - PullRequest
4 голосов
/ 12 августа 2008

Когда я использую хранимую процедуру sp_send_dbmail, я получаю сообщение о том, что моя почта была в очереди. Тем не менее, он никогда не доставляется. Я вижу их в очереди, если я запускаю этот SQL:

SELECT * FROM msdb..sysmail_allitems WHERE sent_status = 'unsent'

Этот SQL возвращает 1:

SELECT is_broker_enabled FROM sys.databases WHERE name = 'msdb'

Эта хранимая процедура возвращает STARTED:

msdb.dbo.sysmail_help_status_sp

Соответствующие учетные записи и профили были настроены, и почта работала в одном месте. В msdb.dbo.sysmail_event_log ошибок нет.

Ответы [ 3 ]

2 голосов
/ 12 мая 2011

У меня была такая же проблема, и вот как я смог ее решить.

Перейти к Агент Sql >> Свойства >> Система оповещения >> Установите флажок Включить для DBMail и добавьте профиль.

Перезапустите Агент, и с тех пор он работает.

Надеюсь, это поможет, _Ub

2 голосов
/ 13 августа 2008

Вы пробовали

sysmail_stop_sp

затем

sysmail_start_sp
1 голос
/ 13 августа 2008

Может быть кучей вещей. Например, я видел (да, действительно видел), что это происходит после:

  • Перезагрузка контроллера домена
  • Перезагрузка сервера Exchange
  • Отключение маршрутизатора
  • Изменения учетной записи службы
  • SQL Server не хватает места на диске

Так что, пока это не случится снова, я бы не волновался из-за этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...