我们遇到的另一个难题是在环境之间移动软件包(例如,从开发环境移动到测试环境,再移动到生产环境)。指向服务器的连接字符串、硬编码文件位置以及其他信息通常依赖于在软件包开发环境中使用的物理服务器或网络。将软件包移动到不同的服务器或网络时,这些连接字符串可能不再有效。SSIS 中有一个出色的新功能,但要着手使用它有一点儿麻烦。
首先,请确保您希望与实际软件包 (dtsx) 文件一起放置的所有文件都是解决方案资源管理器中项目的一部分(您可以将额外的文件添加到项目中的 Miscellaneous 文件夹)。完成该操作之后,使用 SSIS 配置实用工具来允许输入源(可能是 XML 文件)配置软件包的组成部分。然后,运行 SSIS 部署实用工具来生成可执行的安装程序,以便将该软件包(包括更新后的配置)安装到新的服务器上。
访问 SSIS 配置实用工具
1. | 在生成软件包以后,右键单击控制流的设计图面,然后选择 Package Configurations…。 |
2. | 确保选中了 Enable Package Configurations,然后单击 Add。 |
3. | 单击 Next 并选择要使用的配置的类型(默认情况下,我们将使用 XML 文件)。为您选择的配置类型指定正确的信息(在我们的示例中,该信息是指向包含配置详细信息的 XML 文件的文件路径)。 您应该看到如图 29 所示的对话框。 图 29 |
4. | 单击 Next,此时将显示如图 30 所示的 Select Properties to Export 对话框。 |
5. | 根据需要在 Select Properties to Export 对话框中设置的属性。这是该过程中最令人困惑的部分。您必须知道在从一个服务器移动到另一个服务器时,哪些内容有可能更改。我选择了指向我的文件的连接和 SQL Server,因为它们在测试系统和生产系统之间可能是不同的。当您浏览可用对象的列表时,我想您一定会为您可以在安装时配置如此之多的内容而留下深刻印象。您最有可能希望配置的项(它们也是为该配置而选择的项)是指向文件和数据库的连接。 图 30 |
6. | 对于该示例,单击 Next,再单击 Finish,然后单击 Close the Package Configurations Organizer。保存项目。 |
7. | 右键单击解决方案资源管理器中的项目属性,并选择 Properties。单击位于左侧的树控件的 Deployment Utility 节点,您将看到如图 31 所示的对话框。 图 31 |
8. | 在该对话框中,将 CreateDeploymentUtility 选项更改为 true。此外,还要确保 AllowConfigurationChanges 属性设置为 true,然后单击 OK。 |
9. | 从菜单中选择 Build → Build Solution。确保该软件包成功生成。 |
10. | 在 Windows 资源管理器中,导航到生成软件包的目录,然后导航到它下面的 /bin/deployment 目录(在我的项目中,它位于 My Documents → Visual Studio → Projects → Data Transformation Project?1 → Data Transformation Project1 中)。请注意与您的软件包以及可执行的安装程序在一起的配置文件。 |
11. | 将整个目录的内容复制到您打算将软件包移动到的服务器。 |
12. | 双击 DTSInstall.exe。DTS 软件包安装程序将启动。 |
13. | 单击 Next,此时您将看到如图 33 所示的 DTS Package Installer 对话框。 图 33 |
14. | 选择部署的类型(将该软件包复制到文件系统或运行 SQL Server 的服务器中)。对于该示例,我们将选择 File System deployment。 |
15. | 单击 Next,然后选择要部署到的路径,如图 34 所示。 图 34 |
16. | 单击 Next。在该对话框中,您可以更改配置选项,如指向 SQL Server 安装的连接字符串。例如,请注意,我已经将 SQL Server 数据源名称从 rwaymiyukon0 更改为 FRED。 |
17. | 单击 Next,然后单击 Finish。 您的软件包将与您请求 DTS 软件包安装程序对该软件包所作的配置修改一起部署。 |