从global到mooncake迁移SQL Azure
之前遇到了问题,在此备注一下:
因为两个环境基本上可以认为是隔离的,所以迁移过程基本上只有通过导出、导入的方式(也是官方推荐的方式):
1、从global上进行数据库的export操作(扩展名bacpac),导出到blob中。通过Azure管理界面完成(当然也可以通过azure命令行,不过操作比较简单就用界面了)
2、从global的blob中将文件复制到mooncake的blob中。可以手动下载、上传,如果文件很大的话,也可以通过AzCopy命令行实现服务器端的点对点复制。
3、在mooncake上通过bacpac进行数据库导入。通过Azure管理界面完成
注意事项:
1、导入、导出的时候,因为对数据库资源消耗非常高(我设置了DTU报警规则,导出期间的DTU基本上停留在95%以上),所以建议先把数据库scale up。我是把S1级别临时提升到了S2级别(DTU从20上升到50)
2、导出过程会非常慢,要有耐心(50DTU的情况下,实测导出速度在7GB/小时左右,没错,小时……)
3、这种类似跨两个产品的导入导出很可能会遇到问题(见下文)
虽然global和mooncake都标识为v12版本的数据库(相当于SQL Server 2014),但是内部版本很可能会不一致,
这次导入的时候就遇到了这个错误:
“Error importing database:Could not read schema model header information from package. The model version '3.5' is not supported”
原因是global比mooncake的版本略新,导致导出导入的文件结构不兼容
解决方法就是先把global数据库的某些设置调整成和mooncake一致的,针对model version 3.5的话执行如下T-SQL:
ALTER DATABASE [dbname] SET TEMPORAL_HISTORY_RETENTION ON
然后再重新导出……(对,重新导出………………)
其实这个问题和Azure无关,是SQL Server的问题,之前在model version 3.3的时候也出现过。
搜索解决方案用了有一阵时间,其实还有两种方案也是可行的:
方案一:使用最新版的SSMS进行导入,它会考虑旧版本兼容的问题。我确实下载且安装并且开始尝试导入创建数据库了,然而考虑到从本地到Azure的带宽,我看了一眼导入速度就绝望的关掉了……
方案二:使用某些工具直接把数据库中所有数据dump成SQL语句,然后再执行。这种方法理论上可行,不过我连试的念头都没有……依然是带宽问题
参考链接:
从global到mooncake迁移SQL Azure的更多相关文章
- 迁移 SQL Server 数据库到 Azure SQL 实战
最近有个维护的项目需要把 SQL Server 2012 的数据库迁移到 Azure SQL 上去,迁移过程可谓一波三折,故在此分享这次迁移中碰到的点点滴滴,希望对朋友们有所帮助. 文章来源:葡萄城产 ...
- Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- 使用SSMS 2014将本地数据库迁移到Azure SQL Database
使用SQL Server Management Studio 2014将本地数据库迁移到Azure SQL Database的过程比较简单,在SSMS2014中,有一个任务选项为“将数据库部署到Win ...
- 迁移 SQL Server 到 Azure SQL 实战
最近有个维护的项目需要把 SQL Server 2012 的数据库迁移到 Azure SQL 上去.主要是因为租用的主机到期,而运营商停止了主机租赁业务,看来向云端的迁移是大势所趋啊!经过一番折腾最终 ...
- 如何将本地数据库迁移至SQL Azure
Windows Azure的SQL Azure和SQL Server 拥有不同的体系结构,可以说是两个不同的产品.SQL Azure不完全支持或者尚不支持SQL Server的某些功能,这使得我们不能 ...
- MS SQL Server迁移至Azure SQL(官方工具)
前面,我有尝试过将MS SQL Server数据数据迁移至Azure SQL,请参考<MS SQL Server迁移至Azure SQL>,使用的是第三方工具,但现在官方更新了工具,我们尝 ...
- MS SQL Server迁移至Azure SQL
SQL Server的数据目前是存在于公司服务器的,现时需要将它迁移至Azure SQL 迁移分两种 数据库结构复制 数据库结构复制与数据迁移至Azure SQL 第1种方法针对的是将现有数据库创建新 ...
- 云计算之路-试用Azure:一次失败的SQL Server向SQL Azure的迁移尝试
如果数据库用的是SQL Server,那SQL Azure无疑是最吸引人的地方之一.在测试了虚拟机磁盘IO之后,我们迫不急待地进行了SQL Azure的测试. (一) 首先进入manage.windo ...
- 长轮询实现Chat并迁移到Azure测试
长轮询实现Chat并迁移到Azure测试 公司的OA从零开始进行开发,继简单的单点登陆.角色与权限.消息中间件之后,轮到在线即时通信的模块需要我独立去完成.这三周除了逛网店见爱*看动漫接兼职,基本上都 ...
随机推荐
- python代码 构建验证码
1.python代码编写 (随机验证码): #coding: utf-8 import Image, ImageDraw, ImageFont, ImageFilter import string, ...
- OSI7层网络模型
物理层在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层,也是OSI模型的第一层.物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输.物理层的作用 ...
- unity, unity中GL.MultMatrix的一个超级bug
GL.MultMatrix与OpenGL固定管线的glMultMatrix函数行为并不一致,不是累乘,而是覆盖. 例如下面例子,本来预期是在(100,100)处画一个方块,而实际效果却是在(0,0)处 ...
- hbase能否代替mysql
代志远早年就职网易研究院从事MapReduce与DFS系统的自主研发,后增加支付宝数据平台负责Hadoop与HBase体系的架构设计与二次研发,支付宝流计算与分布式搜索系统的设计和研发,后成为支付宝海 ...
- ListView局部更新(非notifyDataSetChanged)
package com.example.test; import java.util.ArrayList; import java.util.List; import android.app.Acti ...
- android studio - 提取局部变量,全局变量,方法快捷键
提取局部变量:Ctrl+Alt+V 提取全局变量:Ctrl+Alt+F 提取方法:Shit+Alt+M
- python学习之strip()
定义: Python strip() 方法用于移除字符串头尾指定的字符(默认为空格). 语法: str.strip([chars]); 返回值: 返回移除字符串头尾指定的字符生成的新字符串. 例子: ...
- 李洪强详细介绍SDWebImage
SDWebImage是一个开源的第三方库,它提供了UIImageView的一个分类,以支持从远程服务器下载并缓存图片的功能.它具有以下功能: 提供UIImageView的一个分类,以支持网络图片的加载 ...
- layui点击table表格的每一格时显示相应的内容
$(document).on('click','.layui-table-cell',function(){ // $("p").css({"background-col ...
- [Delphi] 常用字符集简介
转载 http://www.cnblogs.com/yangyxd/articles/4778483.html 字符集 ANSI (ASCII)美国信息互换标准编码 GB 2312信息交换用汉字编码字 ...