我的工作有一个运行以下代码的步骤:
SELECT * FROM TABLETHATDOESNTEXIST
我有一个与我的目标电子邮件绑定的 SQL Server Agent Operator。我已经设置了作业,以便当作业失败时,它应该向操作员发送电子邮件。但是,当我运行该作业(并观察它失败)时,电子邮件未发送。
我确保通过
exec sp_send_dbmail
该作业只有 1 个步骤(“FRED”是一个不存在的表):
我认为这些设置是默认设置:
作业的通知栏(这里我选择的操作员都是同一个,因为目前整个系统只有1个操作员):
Operator 的设置非常简单:
操作员历史记录显示已尝试发送电子邮件,但我从未收到任何内容:
除了配置 管理 > 数据库邮件 SQL Server 代理 > 运算符 并在作业属性中配置了通知,以便在作业失败时向操作员发送电子邮件
您还需要通过“属性”>“警报系统”>“邮件会话”来配置 SQL Server 代理
那么它应该可以工作,至少在 SQL Server 2016 上对我来说是这样。