将SQL Server数据库迁移到SQL Azure

25

如何将普通的SQL Server数据库移动到SQL Azure?是不是不能从备份文件进行还原?目前我找到的唯一方法是将数据库(及其数据)脚本化,然后在SQL Azure数据库上运行这些脚本,但是当有大量数据时,这种方式比较慢。

6个回答

27

如果正在运行SQL 2008,请使用SQL Azure迁移向导:http://sqlazuremw.codeplex.com/

对于旧版本,我见过最好的方法是先升级到2008再进行移植,或者(不幸的是)使用脚本传输数据,正如你所建议的那样。如果必须这样做,我可以建议使用SubSonic来生成你的脚本:http://subsonicproject.com/


我刚刚使用向导迁移了一个简单的数据库,一次成功地完成了,没有任何故障。 - Lee Gunn
请注意,HierarchyId类型字段在迁移时存在问题。即使在今天(2012年9月)也是如此。 - Miro J.

1

1

更详细的说明会更好。链接可能会失效,后来的访问者会想知道是否值得寻找。 - vonbrand

0

使用:

SqlServer 数据库 > 任务 > 导出数据 > 源 > 目的地

全部完成。


我尝试了这种方法,但遇到了很多麻烦,因为它不会自动处理任何外键约束,让你感到头痛。通常情况下,如果表A有一列是表B的外键,你必须导出表B,否则表A将失败(整个过程也将失败)。 - Etienne

0

注意,使用SQLAzureMW之前请备份本地副本。如果BCP条目不正确,则它可能会将目标指向本地数据库而非Azure。最近刚刚成功使用SQLAzureMW v3.3.9在Azure上创建了表格,但是在源(本地)数据库中重新加载数据(行)时出现了问题。


0

使用Microsoft数据迁移助手工具,可以从此处下载。https://www.microsoft.com/en-us/download/details.aspx?id=53595

首先,您需要安装它。通过使用Azure门户创建新的SQL数据库。现在,您可以将本地SQL数据库部署到Azure SQL数据库中。如果在迁移过程结束时出现一些警告,请忽略它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接