Sql server 有没有一种方法可以通过编程轻松更改多个SSIS包上的服务器名称?
我们正在创建几个SSIS包,以作为发布周期的一部分迁移大型数据库。 我们最终可能会得到大约5-10个SSI包Sql server 有没有一种方法可以通过编程轻松更改多个SSIS包上的服务器名称?,sql-server,ssis,data-migration,Sql Server,Ssis,Data Migration,我们正在创建几个SSIS包,以作为发布周期的一部分迁移大型数据库。 我们最终可能会得到大约5-10个SSI包 由于我们有4个环境(开发、QA、登台、生产等),是否有一种有效的方法可以在每个SSIS包经过不同的服务器环境时更改其目标服务器?理想情况下,运行的脚本可以将所需的服务器作为参数。您可以使用配置文件来存储服务器的连接字符串。然后,当您从一个环境移动到另一个环境时,只需更改配置文件。要简单地创建配置文件,请在包的控制面上, 1) 右键单击并从关联菜单中选择“软件包配置”。 2) 如果尚未选中
由于我们有4个环境(开发、QA、登台、生产等),是否有一种有效的方法可以在每个SSIS包经过不同的服务器环境时更改其目标服务器?理想情况下,运行的脚本可以将所需的服务器作为参数。您可以使用配置文件来存储服务器的连接字符串。然后,当您从一个环境移动到另一个环境时,只需更改配置文件。要简单地创建配置文件,请在包的控制面上,
1) 右键单击并从关联菜单中选择“软件包配置”。
2) 如果尚未选中启用程序包配置复选框,
3) 然后单击添加。。。按钮。
4) 单击对话框上的下一步,
5) 然后添加配置文件名:并单击下一步。
6) 在“对象”视图的“连接管理器”下,展开连接,然后展开属性并选中ConnectionString旁边的框。
7) 然后单击下一步
8) 然后结束 现在您有了一个xml文件,名为您在上面的步骤5中命名的文件。您可以使用文本编辑器编辑此文件,并在每次运行之前将连接字符串更改为映射到所需的服务器 创建后,您可以在多个包之间共享配置文件,只要引用的对象在包之间命名相同
这是一个关于配置的基本教程,有许多保存配置的方法,这只是其中之一。有关配置的更多信息,请参阅您最喜爱的SSIS书籍我们使用一个配置表来存储服务器的配置。但是配置文件也可以很好地工作。我们喜欢这个表,因为我们正在报告SSIS包元数据,当存储在表中时,更容易获取这些数据(以及我们存储的许多其他数据) 威廉·托德·萨尔兹曼的答案涵盖了大部分要点。我还有几点要补充:
- 确保pacakgeProtectionLevel属性是dontsavesitive
- 如果您使用的是不同的装运环境,那么作为包配置源的SQL Server表可能不适合您,因为您需要一个包含所有服务器的所有连接字符串的中央数据库
- 使用从注册表检索的包配置后,您需要知道这些设置是从HKEY_CURRENT_用户配置单元检索的。这会影响包何时通过SQL代理作业运行