none
ssis包部署????? RRS feed

  • 问题

  • 在一个ssis解决方案里,开发了上百个SSIS包,在开发的时候使用了数据源和数据源视图,这些连接管理器使用共同的数据源,将这些包部署到生产环境时如何批量更改连接管理器???

     

    也就是说如何在生产环境中修改已经部署的SSIS包的共同数据源????????

     

    急等回复!!!!!!!!!

    2010年9月10日 9:57

答案

  • 我能想到的法有下面几个:

    1)在开发阶段为第一个包建立 Configuration 文件, 假如你没有其他的包的属性使用了Configuration,只将包中的Connection 设置为可以配置的;然后其他的包都使用同一个Configuration 文件, 在发布这个SSIS 项目的时候指定这个Configuration 文件; (估计这一步你已经错过了)

    2)假如你错过了开发阶段指定Configuration 文件,你仍然可以在SSIS 服务器上为每个包指定Configuration 文件,前提是你已经预先建立了一个并且正确的编辑成了你希望的数据连接,如果你的包不是很多,可以试试这个方法;

    3)假如你不想通过上面两个相对来说效率低的方法或者你的包太多,你可以使用 DTExec 命令行的方法来执行发布的每一个包,在DTExec 命令行里你仍然有机会为每一个命令行指定你已经建立好的 Configuration, 你可以将这上百个 DTExec 命令行放在一个 SQL Job 里或者Batch 文件里;

    4)最后一个稍微复杂的也是最有效率的方法是修改 sysssispackages 系统表,前提是你必须将你的SSIS package 发布在MSDB 上而不是服务器的文件系统了,并且你拥有系统管理员的权限,然后你可以通过 Update 语句修改 sysssispackage 里的每个你的这些 SSIS Package 的记录。

    2010年9月11日 11:00
    版主

全部回复

  • No easy way unless those packages use same config file.
    2010年9月10日 13:28
  • 我能想到的法有下面几个:

    1)在开发阶段为第一个包建立 Configuration 文件, 假如你没有其他的包的属性使用了Configuration,只将包中的Connection 设置为可以配置的;然后其他的包都使用同一个Configuration 文件, 在发布这个SSIS 项目的时候指定这个Configuration 文件; (估计这一步你已经错过了)

    2)假如你错过了开发阶段指定Configuration 文件,你仍然可以在SSIS 服务器上为每个包指定Configuration 文件,前提是你已经预先建立了一个并且正确的编辑成了你希望的数据连接,如果你的包不是很多,可以试试这个方法;

    3)假如你不想通过上面两个相对来说效率低的方法或者你的包太多,你可以使用 DTExec 命令行的方法来执行发布的每一个包,在DTExec 命令行里你仍然有机会为每一个命令行指定你已经建立好的 Configuration, 你可以将这上百个 DTExec 命令行放在一个 SQL Job 里或者Batch 文件里;

    4)最后一个稍微复杂的也是最有效率的方法是修改 sysssispackages 系统表,前提是你必须将你的SSIS package 发布在MSDB 上而不是服务器的文件系统了,并且你拥有系统管理员的权限,然后你可以通过 Update 语句修改 sysssispackage 里的每个你的这些 SSIS Package 的记录。

    2010年9月11日 11:00
    版主