注册
达梦 DTS 数据迁移:从 Oracle 与 MySQL 到 DM8 的完整实践
专栏/技术分享/ 文章详情 /

达梦 DTS 数据迁移:从 Oracle 与 MySQL 到 DM8 的完整实践

xixi 2026/08/28 140 0 0
摘要

1. 概述

DMDIS(达梦数据集成服务)是达梦公司提供的数据迁移与同步工具,支持异构数据库向 DM8 的平滑迁移。本报告基于实际部署操作,系统记录了 DMDIS 的安装配置过程,以及从 Oracle 和 MySQL 两个典型数据源迁移至 DM8 的完整流程,包括迁移前评估、任务执行与结果对比验证,旨在为后续数据迁移项目提供实践参考。

2. 打开 DTS

1)切换到 root,授权 dmdba 用户:

[root@localhost 桌面]# xhost +SI:localuser:dmdba

2)切回 dmdba,设置 DISPLAY 变量:

[dmdba@localhost bin]$ echo $DISPLAY [dmdba@localhost bin]$ export DISPLAY=:0

告诉当前终端以及从这个终端启动的所有程序,把图形界面画到本机的第 0 号屏幕上。

3)启动 DTS 工具:

[dmdba@localhost tool]$ ./dts

3. 从 ORACLE 到 DM 迁移

3.1 操作环境

数据库 操作系统 IP 端口号
ORACLE CentOS Linux 7 x86_64 192.168.218.148 1521
DM8 kylin v10 sp3 192.168.218.144 5234

3.2 迁移前评估

在正式执行迁移之前,需要对源库 Oracle 进行全面的评估,包括表结构、数据量、字段类型兼容性、约束与索引等。通过 DTS 的评估功能,可以提前发现潜在问题,降低迁移风险。
image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

3.3 执行迁移

根据评估结果创建迁移任务,配置源库与目标库连接信息,选择需要迁移的对象,设置迁移策略后执行迁移任务。
image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

3.4 迁移后对比

迁移完成后,对源库与目标库的数据进行对比验证,包括记录数、字段值、约束与索引等,确保数据一致性与完整性。
image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

4. 从 MYSQL 到 DM 迁移

4.1 操作环境

数据库 操作系统 IP 端口号
MYSQL win11 192.168.218.1 3306
DM8 kylin v10 sp3 192.168.218.144 5234

4.2 迁移前准备

1)在 Windows 搜索框输入“Windows Defender 防火墙”并打开。

2)点击左侧“启用或关闭 Windows Defender 防火墙”。

3)将“专用网络”和“公用网络”的关闭防火墙都勾选上(临时关闭)。

4)再次在 Kylin 里执行 mysql -h 192.168.218.1 -u root -p

如果关闭防火墙后能连上:说明问题在防火墙。之后你可以重新打开防火墙,然后新建一条入站规则:端口 3306,TCP,允许连接。

4.3 迁移前评估

对 MySQL 源库进行结构、数据量与类型兼容性评估,识别潜在迁移风险。
image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

4.4 执行迁移

创建迁移任务,配置源库与目标库连接,选择迁移对象并执行。

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

4.5 迁移后对比

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

数据在逻辑上是完全一致的,只是浮点数在 DM8 中显示为科学计数法(如 8.0000001E-010.80000001),而 MySQL 显示为普通小数(0.80)。时间字段完全相同,ID、UserID 也一一对应。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服