一、前言
崖山迁移平台(YashanDB Migration Platform,YMP)是YashanDB提供的数据库迁移产品,支持异构RDBMS与YashanDB之间进行迁移评估、离线迁移、数据校验的能力。 YMP提供可视化服务,用户只需通过简单的界面操作,即可完成从评估到迁移整个流程的执行与监控,实现低门槛、低成本、高效率的异构数据库迁移。
崖山迁移平台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)
三、迁移环境准备
迁移环境准备如下:
数据库端 | 数据库类型 | 版本 | 地址 |
---|---|---|---|
源端 | MySQL | V8.0.28 | 192.168.23.169 |
目标端 | YashanDB | V23.2.1.100 | 192.168.23.58 |
此次分享主要体验崖山迁移平台,MySQL/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监听 | 数据库监听 | 主机间通信 | yasom | yasagent |
---|---|---|---|---|
8090 | 8091 | 8092 | 8093 | 8094 |
用户准备
创建一个用户用于安装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 Chrome | 88 及以上版本 |
Microsoft Edge | 88 及以上版本 |
Firefox | 78 及以上版本 |
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. 创建迁移任务:
评估配置
迁移评估
迁移配置
离线迁移
迁移完成,用时1分钟,平均每秒885行,迁移速率每秒48M,本次迁移的MySQL相对较小,迁移工具性能可能不具代表性。迁移报告和任务日志可以下载,对象列表提供迁移详细信息。
校验初始化
一致性校验
如上图可知存在一个表对象跳过,校验详情中对象不一致信息如下:
校验报告和任务运行日志可以下载,可提供校验详细信息。
六、个人使用感受
崖山迁移平台ymp安装便捷,图形化界面对于第一次接触的同学们可以快速上手。使用过程中碰到的疑问在YashanDB技术交流群也可以得到及时解答。
目前只支持迁移Oracle/MySQL/DM主流版本,源端目标端一致性校验目前存在不支持的字段类型,还有待改进。
崖山数据库迅速推出了配套的迁移工具,这一举措极大地简化了用户进行数据库替换的过程,为使用YashanDB的用户带来了额外的便利和惊喜。