上船容易——从阿里云迁移SQL数据库到Azure云的尝试 之二

简介:

 上文书说到,利用DMA和SSMS迁移阿里PaaS SQL到Azure失败了,并且初步查到了原因,是因为Ali RDS对系统库的访问做了Deny。

    解决的办法是在本地(Ali云)对数据库进行导出导入:创建一个新的IaaS的数据库,然后将PaaS上的数据导入。有了这个可以输出的数据库,就能够在Azure快乐地进行输入啦。

   

    进行数据迁移,除了DMA之外,SSMS 2017的菜单里也集成了Azure SQL的部署向导,能够把SQL Server直接部署到Azure SQL的PaaS实例。

    clip_image001

    放这张图的意义在于这句话“……将数据库部署到Microsoft Azure SQL Database。您还可以使用该向导将 Microsoft Azure SQL Database部署到SQL Server的本地实例,或将数据库从一个Microsoft Azure SQL Database实例移到另一个实例。”

    我觉得,云服务应该是能上能下的,而不是上了就下不来的。虽然这个向导的迁移并不是我期望的平滑同步迁移。SSMS使用的是BACPAC的迁移方式。

    clip_image001[5]

    在这个场景中,我的笔记本同时连接到不同的云平台,这意味着数据需要从Ali云流到我的电脑,然后再流入Azure云。实际部署中肯定应该把SSMS部署在云中,提高复制速度减少流量。并且,需要保留足够的存储空间以存放BACPAC文件。

    回到这个故事的最初,朋友其实是有很大的数据库需要迁移的。所以,这种导入导出的方式并不是我所期望的。我期望的是没有什么实际停机时间的平滑迁移。所以我觉得订阅复制方式可能更加适合。

    借这个机会,我也在Ali的SQL Server上启用了分发,在Azure上启用了订阅。

    image

    从Ali的IaaS SQL到Azure,就没啥问题了。转过身,我当然也要试试DMA这个工具来迁移数据库,

    image

    这一次,能够访问系统库的数据库服务器可以迁移了。DMA工具会对迁移进行评估,然后来创建迁移工作。在这个例子里,因为存在跨库查询,所以迁移到PaaS的SQL实例会有报错,建议修改使用弹性查询。

    通过这次折腾,我觉得比较好的迁移方式,是:

1、如果是个很小的数据库,并且也不想做任何的修改调整的话,简单粗暴的虚机导出导入~

2、如果希望通过迁移完成从IaaS到PaaS的变迁,建议首先评估PaaS是否有任何限制,上得去,是否下得来

3、源SQL到目标SQL的操作兼容性。可以用DMA进行迁移评估,根据报告确认有哪些兼容性调整的工作

4、数据库稍大,就需要考虑数据连续性和迁移窗口的矛盾,是否使用AlwaysOn或者发布订阅的方式来做数据库复制

另外有个本来是NDA的消息,不过微软的兄弟已经透露了,Azure上很快有更新的Managed SQL的版本,能够减少更多的限制,提供更好的性能和灵活度。

    上船容易,也要想想下船难不难。





     本文转自HaoHu 51CTO博客,原文链接:http://blog.51cto.com/haohu/2059550,如需转载请自行联系原作者


相关文章
|
16天前
|
SQL 数据库 数据安全/隐私保护
SQL Server数据库Owner导致事务复制log reader job无法启动的解决办法
【8月更文挑战第14天】解决SQL Server事务复制Log Reader作业因数据库所有者问题无法启动的方法:首先验证数据库所有者是否有效并具足够权限;若非,使用`ALTER AUTHORIZATION`更改为有效登录名。其次,确认Log Reader使用的登录名拥有读取事务日志所需的角色权限。还需检查复制配置是否准确无误,并验证Log Reader代理的连接信息及参数。重启SQL Server Agent服务或手动启动Log Reader作业亦可能解决问题。最后,审查SQL Server错误日志及Windows事件查看器以获取更多线索。
|
7天前
|
SQL 数据库
Microsoft SQL Server 2014如何来备份数据库
Microsoft SQL Server 2014如何来备份数据库
10 3
|
7天前
|
SQL 关系型数据库 MySQL
【MySQL 慢查询秘籍】慢SQL无处遁形!实战指南:一步步教你揪出数据库性能杀手!
【8月更文挑战第24天】本文以教程形式深入探讨了MySQL慢SQL查询的分析与优化方法。首先介绍了如何配置MySQL以记录执行时间过长的SQL语句。接着,利用内置工具`mysqlslowlog`及第三方工具`pt-query-digest`对慢查询日志进行了详细分析。通过一个具体示例展示了可能导致性能瓶颈的查询,并提出了相应的优化策略,包括添加索引、缩小查询范围、使用`EXPLAIN`分析执行计划等。掌握这些技巧对于提升MySQL数据库性能具有重要意义。
34 1
|
9天前
|
SQL 存储 监控
ADBPG&Greenplum成本优化问题之通过SQL查询找到数据库中所有的复制表如何解决
ADBPG&Greenplum成本优化问题之通过SQL查询找到数据库中所有的复制表如何解决
25 1
|
11天前
|
Linux 数据库 数据安全/隐私保护
|
12天前
|
SQL 关系型数据库 MySQL
SQL数据库和 SQLserver数据库
【8月更文挑战第19天】SQL数据库和 SQLserver数据库
26 2
|
12天前
|
SQL 存储 安全
SQL Server数据库创建
【8月更文挑战第19天】SQL Server数据库创建
23 1
|
6天前
|
SQL JavaScript 前端开发
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
|
6天前
|
SQL Java 数据库连接
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
|
7天前
|
SQL Java 数据库连接
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
下一篇
云函数