SSIS 部署问题

SSIS Deployment Woes

我很困惑如何在 SSIS 2008 中创建部署,我可以在我们要部署到的各个站点中使用它。我正在使用部署实用程序部署我的 ETL 包,这些包基于文件并使用 SQL 作业执行。

当我重建我的解决方案时,部署文件连同我将连接字符串绑定到的配置文件一起创建。我发现每个包仍然引用我的项目文件夹中的配置文件,而不是部署文件夹中的配置文件。我以为当我创建部署时,引用配置文件的路径将是相对路径。

理想情况下,我希望能够将部署文件夹的内容复制到闪存驱动器,将其插入我要部署到的站点并根据需要编辑配置文件客户站点,执行文件夹中的部署清单文件并期望一切正常。但事实似乎并非如此。

我还注意到 SQL 作业有一个选项可以指定包的配置文件,但这似乎也没有效果。我肯定在这里做错了什么,请有人帮忙。

您似乎在部署和执行 SSIS 时遇到了这两个问题:

  1. 配置文件引用以绝对路径存储(意味着在创建配置文件引用时在开发环境中使用的具体路径,在生产中这与将使用的路径相同)。
  2. 在 SSIS 2008 中运行时指定不同的配置文件不能覆盖在设计时指定的值(参见 Understanding How SSIS Package Configurations Are Applied at Run Time)。

要按照您描述的方式使用简单的文件副本部署包,您必须更改包以使用对配置文件的相对引用:

右键单击包文件并select查看源代码打开包源代码的XML视图。搜索您的配置文件,其中将包含路径,并删除路径;只保留文件名部分。或者,将绝对路径更改为配置文件的相对路径。保存并关闭包的 XML 视图。

现在,当您将包和配置文件一起部署时,确保它们彼此具有相同的相对位置,包将通过相对路径找到配置文件,并按照您期望的方式工作。

注意:从现在开始您将需要通过双击项目或解决方案文件来打开 BIDS IDE。如果启动 Visual Studio、 然后 从 IDE 打开项目或解决方案,IDE 将无法找到配置文件当您执行包时(当前目录将是 Windows\System32,而不是您的包文件夹)。