达梦 DTS 是做什么的
DTS(数据迁移工具)是达梦提供的数据迁移组件,用于把 Oracle、MySQL、SQL Server 等异构库的数据与对象迁入达梦数据库。典型流程是建立源库与目标库连接、新建迁移工程、勾选要迁移的 schema 与对象、执行预检查并处理告警、正式迁移、最后做数据校验。它的价值在于能把对象与数据一起搬,但预检查报告里列出的不兼容类型与字符集问题必须先清零,否则迁移中途失败会带来大量返工。
基本信息
| 工具位置 | 达梦安装目录的 tool 子目录下 |
|---|---|
| 迁移对象 | 表结构、数据、索引约束、视图、存储过程等 |
| 关键步骤 | 建连接 → 建工程 → 预检查 → 迁移 → 校验 |
| 执行窗口 | 大批量迁移安排在业务低峰,避免影响源库 |
| 结果核对 | disql 连接目标库统计对象与行数 |
典型使用场景
- 从 Oracle 或 MySQL 整体搬迁到达梦,先做单 schema 试点验证工具链
- 迁移前用预检查识别不兼容对象与类型,形成改造清单
- 存量数据初始化:把业务整库搬到新平台后进行应用联调
- 表结构批量转换:源库表数量多时用工具生成目标库 DDL 再人工复核
- 迁移后做行数与关键字段抽样比对,确认数据完整
- 定期数据同步场景:用工具做一次性补齐,之后由应用或同步组件接管
流程要点
流程要点
ls /opt/dmdbms/tool/ | head # 确认迁移工具已安装
# 1) 新建工程:源库连接(Oracle/MySQL 等)→ 目标 DM 连接
# 2) 选择 schema 与表,先执行预检查,逐条处理告警
# 3) 正式迁移,期间观察工具日志与目标库空间
# 4) 迁移后核对对象与数据
./disql SYSDBA/口令@localhost:5236 -e "SELECT COUNT(*) FROM dba_tables;" # 表数量
./disql SYSDBA/口令@localhost:5236 -e "SELECT COUNT(*) FROM 业务表;" # 关键表行数
# 5) 索引与约束单独核对,避免遗漏
./disql SYSDBA/口令@localhost:5236 -e "SELECT COUNT(*) FROM user_indexes;"迁移阶段与检查点
| 阶段 | 主要动作 | 检查点 |
|---|---|---|
| 连接准备 | 建源库与目标库连接 | 账号权限、字符集、网络连通 |
| 预检查 | 扫描类型与对象兼容性 | 告警清零后再继续 |
| 对象迁移 | 迁移表结构、索引、约束 | 对象数量与源库一致 |
| 数据迁移 | 按表批量搬数据 | 行数与抽样字段一致 |
| 收尾校验 | 比对关键表与统计信息 | 无重复键与约束异常 |
预检查报告是迁移质量的主要抓手:它列出的不兼容类型、字符集与对象问题逐条闭环后,正式迁移的成功率会明显提高;把报告归档,也便于后续迁移复用。
大表迁移要分批执行并盯住目标库日志与临时空间:一次性迁移超大表容易撑满临时空间或触发长时间锁等待,影响同实例上的其它业务。