如何获得dbmail来处理SQL Server 2005队列中的项目?

时间:2020-03-05 18:39:13  来源:igfitidea点击:

当我使用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中没有错误。

解决方案

回答

你有没有尝试过

sysmail_stop_sp

然后

sysmail_start_sp

回答

可能是万事大吉。例如,我已经看到(是的,实际上看到了)这种情况发生在以下情况:

  • 域控制器重新启动
  • Exchange服务器重新启动
  • 路由器故障
  • 服务帐号变更
  • SQL Server磁盘空间不足

因此,直到再次发生,我都不会惊慌。