2013-02-01 69 views
0

我遇到了一些我们的软件包的问题。基本布局是连接字符串存储在数据库的SSIS配置表中。SSIS配置连接字符串

我最近注意到我的oledb连接的服务器名称似乎保持不变。我已经看到我将软件包从一个环境移动到另一个环境,并且验证失败。如果我将密码更改为在第一个环境中使用的密码,它将进行验证。

除了连接字符串之外,还有其他一些属性是否需要存储?我没有使用变量或表达式。

有没有人见过这个?有问题的服务器版本是2008 R2。

回答

0

这很可能是因为它试图使用存储在包本身中的连接字符串进行验证,而不是使用配置文件提供的连接字符串进行验证。我知道有两种方法可以解决此问题:

  1. 每个连接管理器和数据流任务都有一个名为DelayValidation的属性。设置为true时,该属性将阻止SSIS在配置更改连接字符串之前尝试验证连接和数据流任务。麻烦的是,默认值为false,您必须在每个连接管理器和数据流任务上进行设置。每次创建新设置时,还需要记住翻转设置。
  2. 您可以手动或以编程方式更改SSIS包中连接字符串的实际值,以便在部署之前匹配配置文件。无可否认,这看起来似乎首先破坏了配置文件的目的,但确实能够起作用。这是我经常最终选择的选项。在我从测试环境转移到生产环境之前,我弹出在文本编辑器中打开包并查找/替换连接字符串。我已经确定为我的包裹安全,但是,就像任何这样的解决方案一样,你的里程可能会有所不同。