现需要将源数据库(Oracle|MySQL等)一些表的海量数据迁移到目标数据库 OceanBase 中,基于常规 jdbc 驱动编码的方式涉及开发工作,性能效率也要看编码的处理机制。
OceanBase 官方提供了的 OceanBase Migration Service (OMS) 数据迁移工具,这个是需要部署的,存在一定的麻烦程度,适合专门的数据库管理员长期使用。对于开发者或者项目组临时迁移某表数据,官方提供的 纯客户端工具OBLoader 在常规数据一次性迁移的场景下,综合来说更简单方便。
迁移数据的方式如下图所示:
实测过一次 insert.sql 方式的导入,数据条数 10万,insert 内容的 sql 文件 97MB,导入耗时17秒。
因为没有反复测试,加上数据库环境等因素,实测的这次导入情况仅供参考,实际效率请以各位实际验证为准。
“官方提供的迁移方案” 具体支持情况如下:
迁移方案 | 结构迁移 | 全量数据迁移 | 增量数据迁移 | 数据校验 | 支持的数据源 |
---|---|---|---|---|---|
OMS | 支持 | 支持 | 支持 | 支持 | OceanBase MySQL Oracle PostgreSQL DB2_LUW TiDB Kafka RocketMQ Datahub |
obloader & obdumper | 支持 | 支持 | 不支持 | 不支持 | OceanBase |
SQL 脚本迁移 | 支持 | 支持 | 不支持 | 不支持 | 主流数据库,但无法跨实例做数据迁移 |
MyDumper | 支持 | 支持 | 不支持 | 不支持 | MySQL 兼容的数据源 |
DataX | 不支持 | 支持 | 不支持 | 不支持 | 较多,具体范围查看官方文档 |
OUTFILE 语句 | 不支持 | 支持 | 不支持 | 不支持 | MySQL OceanBase |
DBCAT | 支持 | 不支持 | 不支持 | 不支持 | 较多,具体范围查看官方文档 |
OBLoader 官方文档:
-
工具下载
-
快速入门
-
性能调优
这里只是列出了几个主要链接,更多操作官方文档都有。
(END)