「YashanDB迁移体验官」使用YMP迁移DM到YashanDB

崖山迁移平台YMP核心服务包括:对象评估、源数据迁移、数据迁移、数据校验。本次体验涉及YMP的核心服务。

数据库版本支持

数据库端数据库类型说明
源端Oracle

支持的版本为 11g,12c,19c,21c,部署形态为单机和RAC

源端MySQL

支持的版本为 5.6,5.7,8.0

源端DM

支持的版本为 8

目标端YashanDB

适配YashanDB数据库v23.2版本,形态支持单机、共享集群,并兼容YashanDB数据库v22.2版本。

二、介质准备

Yashan Migration Platform安装包下载地址:

登录:https://download.yashandb.com/download

选择:Yashan Migration Platform 23.2.1(根据虚机CPU架构自行选择x86或者arm)

三、迁移环境准备

迁移环境准备如下:

数据库端数据库类型版本地址
源端DM

DM8

192.168.33.186

目标端YashanDBV23.2.1.100

192.168.23.58

此次分享主要体验崖山迁移平台,DM/YashanDB安装不展开描述。

四、YMP安装

1. 安装前准备:

服务器配置

项目说明
系统

CentOS 7.6以上、KylinOS V10

架构

X86-64/ARM-64

CPU

4核及以上

内存

8G及以上

磁盘

SSD(建议不小于待同步表中的最大单表数据量的三倍)

操作系统参数调整

需确保操作系统max user processes最大用户线程数不小于65535。

# 查看最大用户线程数 # ulimit -u

# 执行如下命令使最大用户线程数临时生效,重启后无效 # ulimit -u 65536

# 执行执行如下命令将最大用户线程数写入/etc/security/limits.conf文件,重启后参数永久生效

# echo "

# * soft nproc 65536

# * hard nproc 65536

# " >> /etc/security/limits.conf

目录划分

建议在服务器 新建用户以安装部署YMP,注意YMP安装路径不可包含英文句号,以使用新建YMP用户为例,安装路径为/home/ymp。
如安装路径下已存在db目录与bin/yasldr目录(例如/home/ymp/yashan-migrate-platform/db与/home/ymp/yashan-migrate-platform/bin/yashandb_client),需先清空目录。

安装默认端口(服务器默认关闭防火墙)

YMP监听数据库监听主机间通信yasomyasagent
80908091809280938094

用户准备

创建一个用户用于安装YMP,以YMP为例,在用户创建和授权后,后续所有安装步骤均在该用户下操作。

# 新建YMP用户
# useradd -d /home/ymp -m ymp
# passwd ymp

应用环境准备

JDK环境准备

YMP仅支持在JDK8或JDK11的环境下安装。通过Java官方路径下载上述版本的JDK并安装成功后,还需配置如下环境变量:

# 个人环境配置的是JDK11:
# vi /etc/profile

# 在文件结尾添加如下
# export JAVA_HOME=/usr/tools/jdk11
# export PATH=$JAVA_HOME/bin:$PATH
# export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 重新载入配置文件
# source /etc/profile

# 安装成功后查看JDK版本信息
# java -version

libaio环境准备

YMP运行需要libaio动态库

# 查看是否已安装libaio动态库
# rpm -qa | grep libaio

# 若未有版本信息打印,安装libaio
# yum install -y libaio

客户端要求

YMP支持浏览器Google Chrome、Microsoft Edge和Firefox,建议使用当前较新的版本。

浏览器支持要求版本
Google Chrome88 及以上版本
Microsoft Edge88 及以上版本
Firefox78 及以上版本

2. YMP安装:

上传安装包至ymp主目录并解压

# 切换至YMP安装目录
$ cd /home/ymp/
$ unzip yashan-migrate-platform-x86-64.zip

执行安装命令

# 进入安装目录查看帮助
$ cd /home/ymp/yashan-migrate-platform/
$ sh bin/ymp.sh -h

安装内置库并启动YMP

# 进入安装目录执行安装命令
[ymp@hadoop1 yashan-migrate-platform]$ cd /home/ymp/yashan-migrate-platform/
[ymp@hadoop1 yashan-migrate-platform]$ sh bin/ymp.sh install --db /home/ymp/yashandb-23.2.1.100-linux-x86_64.tar.gz
checking install profile.toml...
install version: yashandb 23.2.1.100
update host to yasom...
YMP started successfully!
Start YMP without OCI client path, the data migration from Oracle to Yashan will be unavailable!

访问YMP

访问方式:http://IP:PORT/,PORT默认8090,初始账户名和密码是(admin/admin)

首次登录会强制修改密码。

五、YMP使用

1. 数据源管理:

添加数据源

点击右上角【+ 添加数据源】,填写基础信息之后点击【测试连接】,只有测试连接成功才可以成功添加数据源。
若测试连接失败会提示对应的失败消息,例如用户名或密码错误等。

2. 创建迁移任务:

评估配置

迁移评估

下载评估报告,查看评估详情,提示如右信息: -- 无法获取DDL信息,原因,-- 数据库查询异常[DBMS_METADATA.MD_FILL_DDL] Readonly transaction。

日志反馈给YMP研发,经分析YMP团队使用的DM8与本人使用的DM8存在环境差异(本人DM环境不支持查询系统索引的ddl语句),报错信息继续在DM技术论坛反馈,得到的答复是2022年后版本DM8是支持查询系统索引的ddl语句,2022年之前版本不支持查询系统索引的ddl语句。

接下来手动忽略不兼容的索引、约束DDL,手动修改不兼容的表DDL。

刷新报告,兼容率从0%提升至100%

迁移配置采用默认方式,ymp目前值支持离线迁移,离线迁移成功

迁移报告和任务日志可以下载,对象列表提供迁移详细信息,此次DM测试库未造数,迁移工具性能不具代表性。

校验初始化

一致性校验

如上图可知存在三个表对象跳过,校验详情均提示表没有主键和唯一键,之前迁移评估时候批量忽略了约束采用手动写入的DDL(保护所有约束),该报错信息可忽略

此外,校验报告和任务运行日志可以下载,可提供校验详细信息。

六、个人使用感受

此次迁移DM整体相对于MySQL不是那么顺畅,在兼容性评估这块卡了些时间,对于DM产品本身不支持的功能,ymp产品最好做到规避,而不是让用户对所有对象(此次对象兼容占比0%)进行手动修改。已经忽略的对象也不需要在之后一致性对比中进行校验。

整体而言,ymp团队支持力度大,崖山团队提供了个很好的工具进行国产数据库替换,特别对于之前使用DM的客户,减少了大量工作。

  • 14
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值