【问题标题】:Timeout Error in SQL Server Database Mail FeatureSQL Server 数据库邮件功能中的超时错误
【发布时间】:2013-07-03 09:17:36
【问题描述】:

我将数据库邮件配置文件配置为 gmail smtp 服务器、SSL 和端口 465。 我没有重启服务器。这是第一次在该服务器上使用数据库邮件功能。

当我发送测试邮件时,它会给我以下错误消息:

由于邮件服务器故障,无法将邮件发送给收件人。 (操作已超时)

我用 Thunderbird 尝试了这个邮件配置,我可以通过这个 SMTP 发送邮件。 为什么 SQL Server 会给出此错误消息?我在这里搜索但没有找到任何解决方案。

【问题讨论】:

  • 我仍然有同样的问题 :(

标签: sql-server-2005 smtp timeout database-mail


【解决方案1】:

首先,查看 SQL Server 数据库邮件日志(管理 -> SQL Server 日志 -> 当前,检查 数据库邮件)。它包含更详细的错误解释消息。

但是,最常见的原因是 SQL Server 所在的 Windows Server 的安全配置。查看邮件协议和端口上的防火墙配置。要检查一切是否正常,请在配置了数据库邮件配置文件的服务器上运行 Thunderbird。

【讨论】:

  • Thunderbird 工作正常。但是数据库邮件给出了错误。数据库服务器管理另一家公司。我查看了 SQL Server 版本,它看起来很旧。它需要更新最新的服务包包。最新更新后,我将再次检查。谢谢@Serg
  • 你有没有在服务器上运行过Thunderbirt和数据库邮件?如果不是,这是不正确的实验。
  • 我使用了相同的数据库邮件 smtp 配置。 Thurderbird 可以发送,但 sqlserver 不能
  • 不,我的意思是您应该完全在同一台服务器计算机上执行此操作。可能的原因是安全限制,即您的生产环境。您可以使用此服务器上可用的任何邮件客户端 - Outlook Express 等。只有在从服务器成功发送电子邮件后,您才能说数据库邮件有问题。具体来说 - 即使在这种情况下,您也需要检查您的 SQL Server 引擎是从哪个帐户运行的。
  • 对不起,再看一遍你的评论,也许我理解错了。尝试检查身份验证设置 - 邮件客户端中的 TSL 在数据库邮件中有另一个名称。
【解决方案2】:

我在这里遇到了同样的问题。就我而言,我正在尝试使用 SMTPS 配置(用于出站连接的端口 465)从我的 SQL Server 实例发送电子邮件,但它不起作用。如果我尝试使用任何邮件客户端都可以正常工作。

我注意到无法通过 TELNET 与端口 465 进行连接(我想我需要 openssl)

出于某种原因,我的托管服务提供商仍然允许我使用端口 26 进行连接,但如果我尝试通过 telnet 发送电子邮件,则会告诉我我的动态 IP 已被列入黑名单(这解释了为什么数据库邮件使用端口 26 失败)。即使 IP 地址被列入黑名单,也允许通过经过身份验证的 smpt 进行连接。这意味着我的托管服务提供商无法使用数据库邮件接受与端口 465 的连接,或者我的 sql 服务器安装有问题。

【讨论】:

  • 已修复!我能够解决这个问题。虽然我的托管服务提供商通常表示端口 465 是用于出站 smtps 的端口,但通过将端口更改为 587,我能够使其工作。问题的发生是因为与我的 SQL 服务器关联的动态 IP 被列入黑名单,因此我不再被允许使用未经身份验证的 STMP 发送电子邮件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-30
  • 1970-01-01
  • 2022-09-24
  • 1970-01-01
  • 1970-01-01
  • 2014-09-20
  • 1970-01-01
相关资源
最近更新 更多