SQL Server不向特定电子邮件地址发送电子邮件

时间:2015-01-12 23:42:21

标签: sql-server email

我遇到了一个非常奇怪的错误。

我将脚本设置为存储过程,在SQL Server 2014中作为数据库上的作业运行。

脚本会在特定条件下通知用户。

我知道人们会想看剧本,但我可以向你保证,这与问题无关。事实上,如果我完全忘记了脚本,只是将以下内容作为新查询运行,我仍然遇到同样的问题:

EXEC msdb.dbo.sp_send_dbmail
   @profile_name = 'Our Email Profile',
   @recipients = 'myName@ourCompanysName.com',
   @subject = 'Test',
   @Body = 'test',
   @Body_format='HTML'

这是我的问题:

当我使用任何@yahoo电子邮件作为收件人时,电子邮件已成功排队并发送。

当我使用任何@gmail电子邮件作为收件人时,电子邮件已成功排队并发送。

当我使用某些内部(即@OurCompanyName)电子邮件作为收件人时,电子邮件会排队,但从未收到过。

当我对数据库邮件队列进行排队时(使用EXEC sysmail_help_queue_sp @queue_type = 'Mail'命令),队列中没有该电子邮件。

据我所知,在任何地方都没有例外。日志显示电子邮件已发送。

电子邮件不在我的垃圾文件夹中。

当我尝试从我的个人电子邮件地址向我的工作地址发送测试电子邮件时,它会成功,而我的工作电子邮件并不是唯一失败的电子邮件地址。

一些内部公司电子邮件地址可以提供。

我曾经能够通过脚本发送自己的电子邮件。它过去曾奏效。

我已经阅读了与此问题相关的所有内容,但没有一个是相关的。

我如何缩小这个问题?我还能做些什么来寻找有关电子邮件递送失败的地方的线索?我在公司的庞然大物工作,我和我的同事不知道联系谁,看看这是否是我们内部电子邮件的问题。

2 个答案:

答案 0 :(得分:2)

这听起来像我在公司的Exchange服务器上遇到的类似情况。有一些设置需要您被授权发送到特定帐户,并且您根本没有经过身份验证,或者您发送的帐户无权发送到该帐户。

我的Exchange管理员能够通过删除您必须通过身份验证才能发送到该帐户的限制来为我解决此问题。一旦该帐户设置为能够从未经身份验证的用户接收邮件,我的SQL代理邮件就会成功发送。

答案 1 :(得分:0)

我有同样的问题。已将个人资料电子邮件端口更新为 25 ,并且可以正常工作。