【问题标题】:SQL Agent detects a connection manager in SSIS package that has been deletedSQL 代理检测到 SSIS 包中的连接管理器已被删除
【发布时间】:2018-08-29 14:02:22
【问题描述】:

我们一直在努力将一些 SSIS 包部署到 sql server 中的 SSISDB 目录中。在代理帐户中修复了无数问题后,最新的问题是这样的;

将项目部署到 SSISDB (SQL Server 2012) 然后更新现有 SQL 代理作业以使用已部署的 SSIS 包或删除它并创建新的代理作业后,sql 代理正在检测到开发人员的连接管理器我从包中删除的 SQL Server。当作业以某种权限问题运行但连接管理器在包中不存在时,这会导致失败。我什至检查了连接管理器的 XML 代码,其中没有我删除的那个。

当连接管理器在任何地方的包开发文件中不可见时,我无法理解 SQL 代理如何在作业步骤的配置选项卡中检测连接管理器。

在 Visual Studio 中一次又一次地保存项目后,我删除并重新部署了该项目。

某处是否存在一些包含更多连接数据的深层隐藏设置?感觉问题更多在于 SSMS 而不是 SSIS,但在这一点上我迷路了!

【问题讨论】:

  • 为了清楚起见,您在删除连接后保存了包,但是您是否在重新部署之前构建了它?未能构建项目将保留部署到 SQL Server 的 *.ispac 文件的任何更改,这可以解释为什么它仍然显示在 SQL 代理中。
  • 从包中删除连接管理器后,您要按照哪些步骤重新创建 SQL 代理作业?

标签: sql-server ssis ssis-connection-manager


【解决方案1】:

您没有提供足够的信息让我告诉您连接管理器出现的原因,但我可以告诉您您能做些什么。

您可以通过在对象资源管理器中右键单击作业来编写 SSMS 中的 DROP 和 CREATE JOB 脚本。在 CREATE JOB 脚本中,找到不再需要的连接管理器,将其从脚本中删除,然后运行脚本。

【讨论】:

  • 这里是魔鬼的拥护者。这是一种解决方案;但是,该解决方案解决了症状而不是原因,并且如果重新部署作业,可能会再次出现。我建议 Phteven 努力找出导致上游问题的原因并在那里修复它——这也将提供有益的经验。换句话说,一盎司的预防胜过一磅的治疗。我通常同意除了提供故障排除提示之外没有足够的信息来诊断问题。
  • @JWeezy 我同意,但问题是我怀疑 Phteven 并没有真正更新工作,并且期望工作以某种方式“检测”包已更改,这不是它的工作方式。但是,问题中没有足够的信息甚至无法提出该理论。 :) 但是,如果我的怀疑是正确的,那么这个答案将永久解决问题。
  • 这是正确的@TabAlleman 我刚刚通过 SSISDB 掌握了 SSIS 包部署,正如 J-weezy 上面建议的那样,我在部署之前没有整理部署模型并重新构建它!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-21
  • 1970-01-01
  • 1970-01-01
  • 2014-07-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多