导出 (0) 打印
全部展开

如何使用 Integration Services 将数据库迁移到 Azure SQL Database

更新时间: 2014年4月

注:本页面内容可能不完全适用中国大陆地区运营的 Windows Azure服务。如要了解不同地区 Windows Azure 服务的差异, 请参考本网站.

需要进行复杂的数据转换来将数据库从 SQL Server 的本地实例迁移到 Microsoft Azure SQL Database 时,可以使用 SQL Server Integration Services (SSIS)。

作者:Shaun Tinline-Jones

准备工作

SSIS 可以用于执行范围广泛的数据迁移任务。SSIS 提供对源和目标之间的复杂工作流和数据转换的支持。对于需要进行大量更改才能在 Microsoft Azure SQL Database 上工作的数据库,它是传输数据的好方法。你可以将 SSIS 数据传输包与其他传输数据库架构的机制(如数据层应用程序包)结合使用。

建议

SSIS 的最主要用途是执行复杂的转换以进行需要重大架构更改的迁移。在这些项目中,最好使用另一种机制来管理新架构的开发(如使用 SQL Server Data Tools),但使用 SSIS 数据传输包来处理将源数据转换为目标数据库指定的格式。尽管 SSIS 提供了用于传输架构信息的包类型,但是当源和目标数据库之间没有任何更改时该方法才最为有效。当你必须优化数据加载时间以适合项目的切换窗口时,也请考虑使用 SSIS。

如果要迁移的数据位于单个数据源中并且无需进行转换,那么使用 SSIS 导入/导出向导可以轻松地针对这些数据创建相应的包,然后迁移到目标。你可以使用该向导来生成将数据从源表映射到目标的基本包。然后,你可以编辑该包以添加稳健的错误处理和重试逻辑。

SSIS ADO.NET 适配器支持 Azure SQL Database。它特别为 Microsoft Azure SQL Database 提供一个大容量加载数据的选项。使用 SSIS ADO.NET 目标适配器可以将数据传输到 Microsoft Azure SQL Database。

对于每个 Microsoft Azure SQL Database ADO.NET 目标,请确保使用“尽可能使用大容量插入”选项。这允许你使用大容量加载功能提高传输性能。提高性能的另一种方法是将源数据拆分为文件系统上的多个文件。在 SSIS 设计器中,你可以使用“平面文件组件”引用这些文件。

限制和局限

SSIS 不能作为 Azure 服务(例如 Microsoft Azure SQL Database)获得。你可以在 SQL Server 的本地实例上运行 SSIS 包以将数据传输到 Microsoft Azure SQL Database。但是,SQL IaaS 还是一个承载 SSIS 的选项。

由于限制或网络问题,包可能失败。请在设计包时考虑将它们设计为可以在故障点恢复,而不必重做故障前完成的所有工作。

不支持使用 OLEDB 连接到 Microsoft Azure SQL Database。

[Top]

先决条件

SQL Server 2008 R2 或更高版本中的 SQL Server Integration Services 版本支持 Microsoft Azure SQL Database。

[Top]

使用 SQL Server Integration Services 迁移数据库

以下是用于将 ADO.NET 连接配置为 Microsoft Azure SQL Database 的屏幕快照:

配置 ADO.NET 连接管理器

[Top]

资源

社区附加资源

添加
显示:
© 2014 Microsoft