DTS 搬站的实战心得

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: 传统的数据迁移一直是比较头疼的话题,可能需要停机做mysqldump,或者通过一些程序抓取写入到目标库,但这些程序往往缺少一个大规模的使用量,容易出现数据不一致的情况。 另外就是异构场景,即使像Oracle这种商业数据库有EXPDP 这些工具,但是异构场景,就没有用武之地了。

传统的数据迁移一直是比较头疼的话题,可能需要停机做mysqldump,或者通过一些程序抓取写入到目标库,但这些程序往往缺少一个大规模的使用量,容易出现数据不一致的情况。

另外就是异构场景,即使像Oracle这种商业数据库有EXPDP 这些工具,但是异构场景,就没有用武之地了。

DTS 支持的迁移类型

数据源 结构迁移 全量迁移 增量迁移
Oracle->MySQL 支持 支持 支持
Oracle->RDS For PPAS 支持 支持 支持
Oracle->DRDS 不支持 支持 支持
Oracle->ADS 支持 支持 支持
Oracle->Oracle 支持 支持 支持
MySQL ->RDS For MySQL 支持 支持 支持
MySQL ->PostgreSQL 不支持 支持 支持
SQLServer->SQLServer 支持 支持 支持
PostgreSQL->PostgreSQL 支持 支持 支持
MongoDB -> MongoDB 支持 支持 支持
Redis -> Redis 支持 支持 支持
MySQL->DRDS 不支持 支持 支持
MySQL->PetaData 不支持 支持 支持
MySQL->OceanBase 支持 支持 支持
DB2->MySQL 支持 支持 支持

我们的DTS 主要分为 预检查、结构迁移、全量迁移、增量迁移几个阶段。

预检查,主要是检查连通性和账号权限,以及其他一些情况,比如是否有拓扑冲突。

结构迁移,主要是对表结构的DDL语句的迁移。 这里要注意下,增量迁移的过程目标实例最好不要用trigger,源库的触发器生成值,也会随binlog同步过来。

全量迁移,主要是基于SQL 查询,通过切片算法,分段把数据全量拉取过来。

如果需要增量更改的数据,那么就需要我们的增量迁移。 增量迁移是通过拉取源库的日志文件,如MySQL的binlog,sqlserver的LDF等,分析转储成适合目标实例的SQL语句,再增量并发写入到目标实例。

一、 云下机房上云迁移

https://help.aliyun.com/document_detail/26621.html?spm=a2c4g.11186623.6.601.cc2b3588wFTiPu

注意事项:

1) 权限

迁移类型 结构迁移 全量迁移 增量迁移
本地 MySQL 实例 select select super
select
replication slave
replication client
目标端 RDS for MySQL 实例 读写权限 读写权限 读写权限

2) 源库的binlog格式

binlog_format = row

binlog_row_image=full

3) 映射关系

DTS 迁移不能更改迁移对象,所以配置的时候,要选好映射关系

二、 云下机房和云上实例同步

https://help.aliyun.com/document_detail/66730.html?spm=a2c4g.11186623.6.631.571d2b32sICq3v

注意事项

1) 同步必须是内网,所以需要有专线、智能网关、VPN等,正确配置网络路由

关于专线的配置可以参考这篇

https://help.aliyun.com/document_detail/58143.html?spm=a2c4g.11186623.6.616.ccb169a7r7zrhq

2) 同步的其他配置和迁移类似,但是同步初始化完成后,可以更改同步对象

注意的是,每次更改后,需要等到新加入的对象同步初始化完成,才能进行下一次更改

3) 同步还支持双向同步,极大满足云上测试的前提。

https://help.aliyun.com/document_detail/56776.html?spm=a2c4g.11186623.6.627.6472636abYrkHY

双向同步需要注意的是,冲突策略,默认是冲突以后会中断

三、 其他云厂商的迁移与同步

https://help.aliyun.com/document_detail/52555.html?spm=a2c4g.11186623.6.596.cc2b3588wFTiPu

AWS

https://help.aliyun.com/document_detail/52904.html?spm=a2c4g.11186623.6.597.4f814a512mVENC

腾讯

需要注意的是,确认下其他云厂商的MySQL账号权限, 以及binlog的开放情况,如果能买到专线,速度也会更进一步。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
5天前
|
JSON API 数据格式
OpenCode入门使用教程
本教程介绍如何通过安装OpenCode并配置Canopy Wave API来使用开源模型。首先全局安装OpenCode,然后设置API密钥并创建配置文件,最后在控制台中连接模型并开始交互。
2180 6
|
11天前
|
人工智能 JavaScript Linux
【Claude Code 全攻略】终端AI编程助手从入门到进阶(2026最新版)
Claude Code是Anthropic推出的终端原生AI编程助手,支持40+语言、200k超长上下文,无需切换IDE即可实现代码生成、调试、项目导航与自动化任务。本文详解其安装配置、四大核心功能及进阶技巧,助你全面提升开发效率,搭配GitHub Copilot使用更佳。
|
13天前
|
存储 人工智能 自然语言处理
OpenSpec技术规范+实例应用
OpenSpec 是面向 AI 智能体的轻量级规范驱动开发框架,通过“提案-审查-实施-归档”工作流,解决 AI 编程中的需求偏移与不可预测性问题。它以机器可读的规范为“单一真相源”,将模糊提示转化为可落地的工程实践,助力开发者高效构建稳定、可审计的生产级系统,实现从“凭感觉聊天”到“按规范开发”的跃迁。
1974 18
|
11天前
|
人工智能 JavaScript 前端开发
【2026最新最全】一篇文章带你学会Cursor编程工具
本文介绍了Cursor的下载安装、账号注册、汉化设置、核心模式(Agent、Plan、Debug、Ask)及高阶功能,如@引用、@Doc文档库、@Browser自动化和Rules规则配置,助力开发者高效使用AI编程工具。
1438 7
|
5天前
|
人工智能 前端开发 Docker
Huobao Drama 开源短剧生成平台:从剧本到视频
Huobao Drama 是一个基于 Go + Vue3 的开源 AI 短剧自动化生成平台,支持剧本解析、角色与分镜生成、图生视频及剪辑合成,覆盖短剧生产全链路。内置角色管理、分镜设计、视频合成、任务追踪等功能,支持本地部署与多模型接入(如 OpenAI、Ollama、火山等),搭配 FFmpeg 实现高效视频处理,适用于短剧工作流验证与自建 AI 创作后台。
804 4
|
4天前
|
人工智能 运维 前端开发
Claude Code 30k+ star官方插件,小白也能写专业级代码
Superpowers是Claude Code官方插件,由核心开发者Jesse打造,上线3个月获3万star。它集成brainstorming、TDD、系统化调试等专业开发流程,让AI写代码更规范高效。开源免费,安装简单,实测显著提升开发质量与效率,值得开发者尝试。
|
15天前
|
人工智能 测试技术 开发者
AI Coding后端开发实战:解锁AI辅助编程新范式
本文系统阐述了AI时代开发者如何高效协作AI Coding工具,强调破除认知误区、构建个人上下文管理体系,并精准判断AI输出质量。通过实战流程与案例,助力开发者实现从编码到架构思维的跃迁,成为人机协同的“超级开发者”。
1140 98
|
15天前
|
IDE 开发工具 C语言
【2026最新】VS2026下载安装使用保姆级教程(附安装包+图文步骤)
Visual Studio 2026是微软推出的最新Windows专属IDE,启动更快、内存占用更低,支持C++、Python等开发。推荐免费的Community版,安装简便,适合初学者与个人开发者使用。
1405 13
|
11天前
|
人工智能 JSON 自然语言处理
【2026最新最全】一篇文章带你学会Qoder编辑器
Qoder是一款面向程序员的AI编程助手,集智能补全、对话式编程、项目级理解、任务模式与规则驱动于一体,支持模型分级选择与CLI命令行操作,可自动生成文档、优化提示词,提升开发效率。
878 10
【2026最新最全】一篇文章带你学会Qoder编辑器