• 迁移环境说明
  • 新建工程与迁移
  • 选择迁移方式
  • 选择数据源和目的库
  • 指定对象复制或查询
  • 选择迁移对象
  • 迁移表结构
  • 审阅迁移任务
  • 验证数据
  • 总结


迁移环境说明

源数据库:MySQL 8.0.15
目标数据库:DM 8
操作系统:Windows 10
迁移工具:DM 数据迁移工具 (DM DTS)

MySQL 到 DM 的移植主要有以下几个方面的工作:

  1. 分析待移植系统,确定移植对象。
  2. 通过数据迁移工具 DTS 完成常规数据库对象及数据的迁移。
  3. 通过人工完成 MSQL 的移植。
  4. 移植完成后对移植的结果进行校验,确保移植的完整性和正确性。
  5. 对应用系统进行移植、测试和优化。

新建工程与迁移

DM DTS 工具存放在 DM 数据库安装目录下 tool 文件夹,执行 ./dts 即可运行 DM DTS 工具。

新建工程,选择迁移,并右键新建迁移。

在新建工程对话框中填写工程名和工程描述信息,点击【确定】按钮,成功添加了一个工程。如下图所示:

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl


mysql数据库如何迁移 mysql数据库迁移达梦数据库_数据库_02


展开工程节点,选择【新建迁移】。输入迁移名称:test 迁移描述:从mysql迁移到DM

点击【确定】按钮,完成迁移的创建。

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql数据库如何迁移_03

选择迁移方式

默认打开目录为 DM DTS 工具介绍,选择【下一步】。迁移方式选择【MySQL–>DM】方式,如下图所示:

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql数据库如何迁移_04


mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_05

选择数据源和目的库

分别输入主机名 (IP) 端口(MySQL 默认端口 3306,DM 默认端口 5236),用户名和口令(DM 默认口令 SYSDBA),数据库名 (test),如下图所示:

mysql数据库如何迁移 mysql数据库迁移达梦数据库_数据库_06


mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql_07


这里指定驱动后,报错提示连接数据库失败。我查了一下造成这个问题的原因,是mysql的时区值设置的不正确。mysql默认的时区值是美国,中国的时区要比美国晚8小时,需要采用+8:00的格式。

登录数据库查询:

show variables like’%time_zone’; //查看mysql中设置的时区值

(这里忘了截图,不过查询结果大致上是这样的)

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql_08


那么解决方法如下:

找到配置文件my.ini,用notepad打开,在[mysql]节点下加上

default-time-zone='+08:00'

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql_09


mysql数据库如何迁移 mysql数据库迁移达梦数据库_DM_10


修改后重启mysql服务

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_11


重新查询时区值

mysql数据库如何迁移 mysql数据库迁移达梦数据库_数据库_12


这样就可以顺利选择要迁移的库了

mysql数据库如何迁移 mysql数据库迁移达梦数据库_DM_13


mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_14

指定对象复制或查询

选择源模式和目的模式。从数据源复制对象,目的模式可选择现有模式。

-- 创建表空间
create tablespace "TEST" datafile 'E:\DM\DMTBS\TEST.DBF' size 256 autoextend on next 2 maxsize 10240 CACHE = NORMAL;
-- 创建用户
create user "TEST01" identified by "TEST01@111" default tablespace "TEST";
-- 分配权限
grant "DBA","PUBLIC","VTI","SOI" to "TEST01";

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_15


mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_16

选择迁移对象

此处选择要迁移的模式并核对目的模式、对象。如需调整,用户可根据名称具体选择。

mysql迁移DM,建议迁移顺序:先表结构,再数据,再约束索引

选择所有需要迁移的表,点击转换按钮

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_17

迁移表结构

可设置迁移策略,包括表定义、主键、约束条件、索引、数据、读写行数设置等参数,可供用户调整策略。
列映射选项中可调整列名、数据类型、精度、主键(唯一)、空值限制等参数。

取消勾选数据,约束,索引,保留表结构相关。

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_18


勾选左下角的应用当前选项到其他同类对象。

mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_19

审阅迁移任务

mysql数据库如何迁移 mysql数据库迁移达梦数据库_数据库_20


mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql数据库如何迁移_21


同样的步骤,重新迁移数据。

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql数据库如何迁移_22


mysql数据库如何迁移 mysql数据库迁移达梦数据库_perl_23


最后迁移约束和索引

mysql数据库如何迁移 mysql数据库迁移达梦数据库_mysql数据库如何迁移_24


mysql数据库如何迁移 mysql数据库迁移达梦数据库_DM_25

验证数据

至此,整个迁移全部完成,打开DM管理工具,找到对应模式,

mysql数据库如何迁移 mysql数据库迁移达梦数据库_数据库_26

总结

具体迁移中遇到的报错问题,结合实际分析解决。