我们每天都会自动发送带有附件的电子邮件,而且多年来一直如此。上周三,电子邮件方面的事情开始频繁失败。如果它 100% 失败,则可能更容易排除故障。但它似乎非常错过了一些命中,所以试图找出其中的模式一直很困难。
事件日志中的描述是:由于邮件服务器故障,无法将邮件发送给收件人。(使用帐户 1 (2021-10-27T07:43:28) 发送邮件。异常消息:无法向邮件服务器发送邮件。(发送邮件失败。)。)
在过去的几年里,相同的配置文件/帐户/参数已经到位。SMTP 服务器是 Office 365,端口 25,并为帐户使用基本身份验证。SQL Server Jobs Agent 帐户也没有任何变化。
我尝试过的事情无济于事 - 为数据库邮件帐户创建另一个帐户/配置文件,增加重试次数,将可执行文件的最短生命周期更改为 12 小时而不是 10 分钟。我尝试亲自运行 sp_send_dbmail 脚本(带附件和不带附件),并且它也被我自己的帐户命中或错过(更经常错过),所以我认为这不是现有的权限/访问问题。
我试图在互联网上搜索所有可能与此相关的想法。我已将 SQL Server 2017 修补到 CU26,希望它可能是修复此问题的更新中的某些内容,但没有运气。我完全不知道这是如何突然出现的。我愿意接受建议。我们的操作小而简单,因此我们在基础设施中没有任何非常复杂的东西。
提前致谢。
编辑时:我确实尝试从连接到 office 365 smtp 的本地计算机(Windows 10)运行 powershell 脚本,并使用数据库邮件的电子邮件配置文件的凭据。它可以在我的本地机器上正常工作。虽然补充说明,当我尝试从 sql server 所在的机器(windows server 2016)执行 powershell 脚本时,它给了我一个关于发送中 4 个参数的错误,通过一些谷歌搜索发现它本质上是一个通用的尝试连接到 smtp 客户端时出错。我希望通过这些信息,它可以更清楚地说明这件事是如何被封装的,因为到目前为止,我对我所尝试的一切都感到茫然。