Deployment 如何将SSIS 2012项目配置为在不同的环境配置下运行?
使用项目部署模型配置2012 SSIS项目的最佳逻辑方式是什么 考虑一个SSIS项目<代码>MyImport项目有三个包的场景 项目解决方案:Deployment 如何将SSIS 2012项目配置为在不同的环境配置下运行?,deployment,ssis,sql-server-2012,Deployment,Ssis,Sql Server 2012,使用项目部署模型配置2012 SSIS项目的最佳逻辑方式是什么 考虑一个SSIS项目MyImport项目有三个包的场景 项目解决方案: MyImport项目 进口包装-01 进口包装-02 进口包装-03 项目变量: Project DBConnString:由所有包用于连接到单个数据库 Project FolderPath:由所有包用于查找输入文件 环境: 该项目将在上部署 QA服务器 暂存服务器 生产服务器 是否有配置项目参数的标准方法 我看到了很多关于软件包配置文件的文章。
- MyImport项目
- 进口包装-01
- 进口包装-02
- 进口包装-03
- Project DBConnString:由所有包用于连接到单个数据库
- Project FolderPath:由所有包用于查找输入文件
- QA服务器
- 暂存服务器
- 生产服务器
我看到了很多关于软件包配置文件的文章。是否有办法根据部署环境配置项目参数?SSIS 2012项目部署模型提供了更大的灵活性,可以创建环境并配置可映射到项目参数的环境特定值。下面的示例演示了如何针对多个环境执行部署到
Integration Services Catalog
的包。理想情况下,生产环境应该位于自己的服务器上。为了简单起见,本例使用同一服务器上的所有环境
SSIS 2012集成服务目录,具有特定于环境的值:
假设您已将一个包部署到Integration Services目录,其中包含两个名为Environment
和FilePath
的项目参数。要在不同环境下运行包,可以在Integration Services Catalogs\SSIDB\Folder name\environments下创建多个环境
此示例有三个环境文件夹,分别名为DEV
、PRD
和TST
要创建稍后应映射到项目参数的变量,请双击Environments文件夹下的环境。此示例显示如何在所有环境中配置值
由于包有两个名为Environment
和FilePath
的项目参数,因此我们将创建两个同名的环境变量。所有环境都配置了相同的变量名,但值不同
要将环境变量映射到项目参数,请右键单击Integration Services目录下的项目,然后单击配置…
在“配置”对话框中,单击“引用”页面并添加应与项目关联的每个环境
在配置对话框中,单击参数页面。对于参数
选项卡下列出的每个参数,您需要单击省略号
按钮来映射相应的环境变量
在“设置参数值”对话框中,选择“使用环境变量”单选按钮,然后选择适当的变量。这里映射的参数是[Practice.SSDT].[Environment]
。因此,它被映射到环境变量environment
一旦将参数映射到适当的环境变量,就可以在包执行期间选择正确的环境。要执行包,右键单击包,然后单击执行…
在“执行包”对话框中,选中“环境”框,并选择包应在其中使用值执行的适当环境
本例中的示例包SO_15206184.dtsx
仅将项目参数Environment
和FilePath
的值插入表中。下面是针对不同环境执行包的结果,甚至包括来自SSDT的环境
根据我对您问题的理解,您有3个单独的服务器要部署到,每个服务器都有自己的SSIS目录实例。您不希望在多个环境中执行单个服务器。不幸的是,在这种情况下,user756519的答案几乎没有什么用处——尽管付出了10%的努力 我将忽略SSIS中的“环境”设置。这用于在单个SQL Server实例上管理多个环境 相反,我会:
现在,您可以继续开发项目并将其部署到每个环境中。除非添加/删除/重命名项目参数,否则无需进一步维护。在每个环境/服务器上执行任何包时,它将遵循通过SSMS设置的配置您是希望利用SSIS 2012的新项目部署模型,还是使用现有包部署模型?我使用的是项目部署模型。我应该在报告中提到这一点question@frictionlesspulley下面哪个答案最准确地描述了您想要实现的目标?也许选择一个作为被接受的答案?你能检查一下l