数据库邮件不工作/队列或日志中没有任何内容

时间:2018-03-23 15:25:40

标签: sql-server database-mail

在一台服务器上配置数据库邮件并发送测试邮件后,我在队列或日志中找不到任何内容。但是,邮件ID随着每次重试而不断递增。我检查了以下内容:

  • 我是盒子上的系统管理员,所以我有权发送邮件
  • EXEC msdb.dbo.sysmail_help_status_sp;举报STARTED
  • 队列中没有记录:SELECT sent_account_id, sent_date FROM msdb.dbo.sysmail_sentitems;
  • 事件日志中没有记录:SELECT * FROM msdb.dbo.sysmail_event_log;
  • 已启用服务代理。这将返回" 1":SELECT is_broker_enabled FROM sys.databases WHERE name = 'msdb';

我已经在其他4个实例中成功配置了它,它只是一个让我悲伤的实例。任何其他指针将不胜感激。

1 个答案:

答案 0 :(得分:1)

看起来这个问题是我在这个实例上运行的sql版本中的错误,如下所述:https://support.microsoft.com/en-us/help/3186435/fix-sql-server-2016-database-mail-does-not-work-on-a-computer-that-doe

安装CU2将修复它:

  

注意此问题还会影响运行SQL Server的实例   2016 SP1 CU1。出现此问题是由于SQL Server 2016中的错误   SP1 CU1设置。 SQL Server 2016 SP1 CU1的安装程序将删除   配置文件DatabaseMail.exe.config而不用新替换它   一。这会导致数据库邮件在没有.Net的情况下中断   框架3.5 SP1。 SQL Server 2016 SP1 CU2中的修复程序意味着   解决此问题并阻止DatabaseMail.exe.config文件   安装CU后从机器上删除。所以,如果你   安装SQL Server 2016 SP1 + CU2,数据库邮件将不会   受到设置的影响。但是,如果数据库邮件被破坏了   安装SQL Server 2016 SP1 CU1,可以使用任何一个   下面提到的解决方法。