【问题标题】:SQL server(2016) database email not workingSQL Server(2016)数据库电子邮件不起作用
【发布时间】:2018-04-05 15:37:19
【问题描述】:

这是我正在使用的 sql-server 版本:

Microsoft SQL Server 2016 (RTM-GDR) (KB4019088) - 13.0.1742.0 (X64) Jul 5 2017 23:41:17 版权所有 (c) Microsoft Corporation Enterprise Edition (64-bit) o​​n Windows Server 2016 Standard 6.3 (构建 14393:)

我面临的问题是数据库电子邮件。在浏览了很多文章之后,我仍然不走运。 也尝试重置配置:

exec sp_configure 'show advanced options',1
RECONFIGURE WITH OVERRIDE
sp_configure 'Database Mail XPs',1
RECONFIGURE 

SELECT is_broker_enabled FROM sys.databases WHERE name = 'msdb'

1

EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail';

queue_type 长度状态 last_empty_rowset_time last_activated_time

邮件 15 INACTIVE 2018-04-05 07:02:12.260 2018-04-05 07:02:12.247

还检查了 sql-server 代理下的警报系统。一切看起来都很好。不知道哪里不好。 msdb.dbo.sysmail_allitems 报告的已发送状态为“未发送”。 谁能帮帮我。

【问题讨论】:

  • 您需要配置您的配置文件和 SMTP 设置,您可以使用管理中的 SSMS 向导,数据库邮件(选项配置数据库邮件)。您还需要确保 SMTP 服务器和数据库之间的网络可见性。
  • 所有这些都已经完成了。实际上,我已经解决了这个问题。实际上 sysmail 需要缺少的 Framework 3.5。安装此功能解决了这个问题。谢谢。
  • @sandeep 您好,我已经为邮件启用了 Framework 3.5,但仍然与您提到的问题相同,如果您有任何帮助,我们将不胜感激。
  • 对我来说,设置框架已经解决了。但在此之前,我还尝试了以下文章中提到的步骤:docs.microsoft.com/en-us/previous-versions/sql/…。尝试执行以下一堆查询:要检查邮件队列的状态,这里有查询:+++ SELECT * FROM msdb.dbo.sysmail_allitems SELECT * FROM msdb.dbo.sysmail_event_log EXEC msdb.dbo.sysmail_help_queue_sp @queue_type = 'mail' ;试图停止\启动邮件服务,但仍然没有帮助。执行 msdb.dbo.sysmail_start_sp;执行 msdb.dbo.sysmail_help_status_sp;

标签: sql-server sql-server-2016 database-mail


【解决方案1】:

sysmail 依赖于框架 3.5。安装 framework3.5 解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-19
    • 2018-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多