SSIS - 未从已部署的包发送电子邮件

时间:2018-02-10 15:08:14

标签: sql-server ssis smtp

我正在构建一个执行多个任务的程序包,并在程序包的最后一步发送成功的电子邮件(来自脚本任务)。

从Visual Studio手动运行包时,电子邮件将正确发送。但是,从SQL Server中的作业运行已部署的程序包时,电子邮件永远不会发送(我已检入发送电子邮件的Gmail帐户,但它不会出现在“已发送”文件夹中)。

我还检查了程序包执行的报告,但是找不到发送电子邮件任务,所以它似乎从未真正到达发送电子邮件的脚本任务。

任何想法可能是什么问题?

谢谢!

3 个答案:

答案 0 :(得分:3)

确保您可以在不涉及Visual Studio的情况下在SQL Server中发送邮件。此外,SQL Server中的作业有时作为与您通过Visual Studio登录和运行时不同的用户运行。问题可能是脚本没有运行,因为SQL Server用户没有运行脚本的一部分的权限。我将其设置为在SQL Server中作为SSIS作业运行,然后检查SQL Server中的SSIS日志以查看故障发生的位置。如果是不同的用户问题,您可以通过多种方式解决。您可以为SQL Server用户提供必要的权限,也可以在SQL Server中设置具有运行作业权限的代理帐户

答案 1 :(得分:1)

以下链接回答了这个问题。在部署到SSIS之前,请更改SQL Server版本:

SSIS: script task (vs15) not work when deploy on sql server 2014

答案 2 :(得分:0)

在查看执行报告时我注意到了其他一些事情,现在我更加困惑了......(因为其他工作会触发电子邮件并且一切都很好)。

1)当从作业执行作业(由SQLSERVERAGENT执行)时,似乎任务运行(自出现日志),但仍未发送电子邮件:

When executing from job

2)在SQL Server中手动执行(我的用户是SysAdmin)时会出现错误:

When executing manually in SQL Server