如何将我的本地数据库还原到Windows Azure数据库?


Answers:


71

有几种方法可以做到这一点:

  1. (我通常使用的)最可靠的方法是使用SQL Azure迁移向导
  2. 然后,您在SSMS(SQL Server Management Studio 2008 R2或更高版本)中具有“生成脚本”选项。生成脚本选项确实具有制作符合SQL Azure脚本的功能。它还可以编写数据脚本。但是,如果您也想迁移数据,我建议使用方法一。SQL Azure迁移向导使用BCP工具,该工具将数据转储为二进制文件,而SSMS仅生成内联INSERT语句
  3. SSIS(SQL Server集成服务)-您可以创建一个数据传输任务,但是对于小型数据库,我很少使用它。
  4. 导出/导入数据层应用程序(使用DACPAC软件包)-这将迁移您的架构,也可以迁移您的数据。

更新2017-10-24

Azure SQL数据库现在支持从本地SQL Server进行事务复制。您可以将Azure SQL数据库配置为订阅服务器,而将SQL Server本地配置为发布服务器。您可以在此处阅读有关数据库迁移选项和策略的更多信息:https : //docs.microsoft.com/zh-cn/azure/sql-database/sql-database-cloud-migrate

更新2017-12-23

SQL Azure迁移向导已由数据迁移助手代替:https : //docs.microsoft.com/zh-cn/azure/sql-database/sql-database-cloud-migrate


我尝试使用SQL Server 2014工具来完成这项工作,但未成功。SQL Azure迁移向导可以很好地完成这项工作。
nrod'9

1
几天后进行的第二次迁移SQL Azure Migration Wizard没有帮助。解决方案最终是:从本地SQL Server中提取数据层(使用Visual Studio SQL Server Object Explorer),然后在Azure SQL数据库中发布相同的文件(也使用Visual Studio SQL Server Object Explorer),然后选中复选框注册为数据层应用程序并选中允许Windows中使用不兼容的平台高级选项。工作真的很好!
nrod

我很惊讶人们在2017年的表现如何,而对2011年给出的答案却持否定态度。但是在那种情况下,我仍然会回答,将SQL数据库迁移到Azure SQL DB的最可靠方法是使用SQL Azure迁移向导。除非您要寻找非停机时间迁移。
astaykov

2
SQL Azure迁移向导已由数据迁移助手代替:docs.microsoft.com/en-us/azure/sql-database/…–
Jeroen

20

如果本地计算机上已有数据库,则可以使用SQL Management Studio在Azure上直接迁移数据库。跟着这些步骤:

  1. 右键单击SSMS中的数据库名称

在此处输入图片说明

  1. 按照出现的向导进行操作

连接到天蓝色时,除了IP以外,您还需要其他什么吗?您需要一个端口吗?
Dan B

不,您只需要SQL Azure帐户的凭据即可连接到SSMS中的Azure。在Azure Portal中,您应该已添加IP,以使用SQL Azure中的“防火墙”设置访问数据库。
维沙尔

这对我来说效果很好,但是您必须对与数据库关联的用户有所注意。任何基于Windows的用户或服务都将导致该过程出错。删除它们后,再次运行就很好了。
jocull

5

抱歉,如果这正在恢复旧的主题,但是其中某些链接现在已过时,不再可用。
jamiebarrow

仅有一个链接不可用,现已更新。
cory-fowler 2012年

2
谢谢。此外,Microsoft代号“数据传输”实验阶段已经完成,仅假定它已经过时,我在该页面上看不到任何相关信息。
jamiebarrow 2012年


0

我相信,SQL Server 2012 Management Studio和SQL Azure工具现在也具有此选项。

在SSMS中,如果右键单击“数据库”根目录,则有一个选项“导入数据层应用程序...”,它允许您还原BACPAC(也可以右键单击数据库,然后选择“导出数据层”。应用...”,将现有数据库导出到BACPAC)。

SQL Server数据工具使Visual Studio 2010具有“数据比较”选项,该选项还可以用于在两个数据库实例之间移动数据(适用于较小的数据修补程序)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.