如何配置SSIS 2012项目以在不同的环境配置下运行?

时间:2013-03-04 16:25:24

标签: deployment ssis sql-server-2012

使用项目部署模型配置2012 SSIS项目的最佳逻辑方式是什么?

考虑一个具有三个包

的SSIS项目MyImport-Project的场景

项目解决方案:

  • MyImport-项目
    • Import-Package-01
    • Import-Package-02
    • 导入级封装-03

项目变量:

  • Project-DBConnString:所有包用于连接到单个数据库。
  • Project-FolderPath:所有包用于查找输入文件

环境:

项目部署在

  • QA服务器
  • 登台服务器
  • 生产服务器

是否有配置项目参数的标准方法?

我在包的配置文件上看到了不少文章。有没有办法根据部署环境配置项目参数?

2 个答案:

答案 0 :(得分:64)

SSIS 2012项目部署模型为创建环境和配置环境特定值提供了更大的灵活性,这些值可以映射到项目参数。以下示例说明了如何针对多个环境执行部署到 Integration Services Catalog 的程序包。理想情况下,生产环境应该在自己的服务器上。为简单起见,此示例使用同一服务器上的所有环境。

具有特定于环境值的SSIS 2012 Integration Services目录:

假设您已使用名为 Environment FilePath 的两个项目参数向Integration Services目录部署了一个包。要在不同环境下运行包,您可以在 Integration Services Catalogs \ SSIDB \ Folder name \ Environments

下创建多个环境

此示例包含三个名为 DEV 的环境文件夹, PRD TST

Environment Folders

要创建稍后应映射到项目参数的变量,请双击“环境”文件夹下的环境。此示例显示了如何在所有环境中配置值。

因为包有两个名为 Environment FilePath 的项目参数,我们将创建两个同名的环境变量。所有环境都配置了 same 变量名称,但 different 值。

DEV Environment

TST Environment

PRD Environment

要将环境变量映射到项目参数,请右键单击Integration Services目录下的项目,然后单击 Configure...

Project Configure

配置对话框中,点击 References 页面,然后添加应与项目关联的每个环境。

Configure References

配置对话框中,点击 Parameters 页面。对于 Parameters 标签下列出的每个参数,您需要点击 Ellipsis 按钮以映射相应的环境变量。

Configure Parameters

在“设置参数值”对话框中,选择“使用环境变量radiobutton”并选择适当的变量。这里映射的参数是 [Practice.SSDT].[Environment] 。因此,它将根据环境变量 Environment 进行映射。

Set Parameter Value

将参数映射到相应的环境变量后,可以在程序包执行期间选择正确的环境。要执行该程序包,请右键单击该程序包,然后单击 Execute...

Execute Package

执行包对话框中,选中 Environment 框,然后选择包应使用该值执行的适当环境。

Execute Package

此示例中的示例包 SO_15206184.dtsx 只是插入项目参数的值 Environment FilePath < / em>进入表格。以下是针对不同环境执行包的结果,甚至是包含在SSDT内的包。

Package Execution Results

答案 1 :(得分:12)

在我阅读您的问题时,您需要部署3个独立的服务器,每个服务器都有自己的SSIS目录实例。您不希望单个服务器在多个环境中执行。对于那种情况,不幸的是,用户756519的答案几乎没有用 - 尽管十分之十用于努力。

我会忽略&#34;环境&#34;在SSIS中设置。这用于管理单个SQL Server实例上的多个环境。

相反,我会:

  1. 在Visual Studio解决方案中设置Environment 1 Project Parameter值并部署到Environment 1
  2. 部署到环境2
  3. 使用SSMS连接到环境2,在“Integration Services目录”下导航以查找项目,右键单击它并选择“配置”。根据环境2
  4. 的要求编辑参数
  5. 部署到环境3
  6. 使用SSMS连接到环境3,在“Integration Services目录”下导航以查找项目,右键单击它并选择“配置”。根据环境3
  7. 的要求编辑参数

    您现在可以继续开发项目并将其部署到每个环境。除非您添加/删除/重命名项目参数,否则无需进一步维护。当在每个环境/服务器上执行任何包时,它将遵循通过SSMS配置集