对Sql Server 2005中的DBMail进行故障排除


8

在SQL Server 2005计算机上,我已设置DBMail并正确配置。我可以使用“通知操作员”和EXEC msdb.dbo.sp_send_dbmail将电子邮件排队。

但是问题是排队的邮件永远不会通过。查询时,我在队列中看到10封电子邮件

SELECT * FROM msdb.dbo.sysmail_unsentitems

但是,如果我重新启动 SQL Server服务,则所有邮件都会通过,并且我会在收件箱中收到电子邮件。

到目前为止,这是我唯一能找到的模式。

所以我的问题是:有没有办法对DBmail进行故障排除?我阅读了有关MSDN的一些步骤,但是它们并没有太大帮助。任何对文章有帮助的URL都将不胜感激。

Answers:


8

您是否已在MSDB上启动服务代理?您需要启用服务代理才能处理邮件队列。

阅读有关Stackoverflow的文章。另一个可能对您有所帮助的链接是如何对sql中的队列进行故障排除。您也可以使用此链接来启动服务代理并在MSDB上运行。

希望这些链接可以对您有所帮助。


谢谢,我会尝试您的建议并发布我的结果。
UB01 2011年

是的,我确实尝试了所有这些方法。一切都以STARTED或正常运行的方式返回。看起来问题出在Sql Agent Alert System设置上。见下文
UB01 2011年

5

感谢您的所有评论。我找到了问题的根源。

SQL代理>>属性>>警报系统(选项卡)>>启用邮件配置文件(选中), 然后选择适当的邮件系统并添加邮件配置文件。

数据库邮件的MSDN链接

这解决了这个问题。

当我查看Sql Agent Logs时,它的日志条目为“无法启动邮件会话(原因:未定义邮件配置文件)”。使用这个关键词,我能够在线搜索并获得帮助。


现在一切都很好。:-)
Nico

是的,似乎是这样。
UB01
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.