我有 MS SQL Server 2008 R2。我还使用电子邮件用户和密码将数据库邮件配置到我的邮件服务器。我为此电子邮件创建了一个操作员,并将该操作员分配给一个工作,并在工作成功、完成和失败时激活电子邮件通知。但是,在任何工作状态下都不会发送电子邮件通知。
也就是说,我使用了测试实用程序来测试数据库邮件。这些被放入正在建立的队列中,但电子邮件已成功发送,并且我收到所述电子邮件到测试中指定的目的地地址。然而,同样,虽然测试正在运行,但队列仍在构建每个测试,并且作业通知根本不起作用。
在调查 sysmail_log 和 sysmail_mailitems 后,我看到我的测试电子邮件在 sysmail_log 中成功,而这些邮件的上下文在 sysmail_mailitems 中。当我运行作业时,我在任一日志中都看不到数据库邮件正在尝试发送或失败的任何迹象。
最后,我使用以下 SQL 运行查询以发送电子邮件(已删除个人信息):
USE msdb
GO
EXEC sp_send_dbmail @profile_name='MyProfileName',
@recipients='test@Example.com',
@subject='Test message',
@body='This is the body of the test message.
Congrates Database Mail Received By you Successfully.'
这个查询运行并成功发送了一封电子邮件。那么,什么给了?当设置为向操作员发送有关成功、完成或失败的电子邮件时,为什么我没有收到有关作业的电子邮件通知?我错过了什么?