2

我是 SSIS 的新手,我的项目仍处于早期阶段,只有单独服务器上的开发和测试环境。生产环境将与测试在同一台服务器上(我对此没有发言权!)。我有许多包,每个包都有一个 SQL 代理作业来安排它们,我需要一种方法来处理用于开发、测试和生产的包配置。

我知道我可以在同一台服务器上的 MSDB 内的不同目录中存储 2 个版本的包,但是在同一台服务器上实现测试和生产的最佳方法是部署到生产中的手动工作量最少吗?

我可以将包部署到 MSDB 中的 2 个不同位置,并为每个包创建一个作业(1 个用于测试,1 个用于生产)但是我如何设置包配置以便包本身不需要在环境之间更改?

4

1 回答 1

2

你有几个选择:

  1. 按照此处此处的描述创建一个包配置表。如果您在同一台服务器上运行软件包,这可能会很好。

  2. 覆盖 SQL Server 代理作业中的连接设置。这可以很好地工作,但如果每个作业都必须覆盖连接设置,则可能难以管理。

  3. 使用包配置 XML 文件并通过 DTEXEC 代理运行您的包。如果软件包在同一台服务器上,这对我来说似乎有点过头了。

  4. 使用包中的一个变量来检查它正在运行的存储以确定要使用的数据库。这是一个我没有测试过的理论。如果我是正确的,这种方法的优点是您不需要在包之外设置任何东西。缺点是它可能很难或不可能实现,特别是当您必须考虑在测试期间包将如何在 BIDS 中本地运行时。

于 2010-09-25T16:15:39.890 回答