实验四、用mysqldump和datax同步数据到oceanbase
下载tpcc软件
https://github.com/Percona-Lab/tpcc-mysql
初始化数据
unzip tpcc-mysql-master.zip
mysql –ruoot –p
create table tpcc;
use tpcc;
source create_table.sql
./tpcc_load -h192.168.56.210 -d tpcc -uroot -poracle -w 1
使用mysqldump迁移数据
导出tpcc数据
mysqldump -h192.168.56.210 -uroot -poracle --databases tpcc > tpcc.sql
导入oceansbase
导入过程中会有部分不兼容语法,可以忽略
mysql -h192.168.56.210 -uroot@my_test_obtenant -P 2881 -p -c –A
create database tpcc;
use tpcc;
show databases;
source tpcc.sql
用datax迁移数据
软件下载
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
软件安装和配置
tar zxvf datax.tar.gz
python ./datax/bin/datax.py -r mysqlreader -w oceanbasev10writer > mysql2ob.json
cat mysql2ob.json
{
"job": {
"setting": {
"speed": {
"channel": 1
},
"errorLimit": {
"record": 0,
"percentage": 0.1
}
},
"content": [
{
"reader": {
"name": "mysqlreader",
"parameter": {
"username": "root",
"password": "oracle",
"column": [
"*"
],
"connection": [
{
"table": [
"orders"
],
"jdbcUrl": ["jdbc:mysql://192.168.56.210:3306/tpcc?useUnicode=true&characterEncoding=utf8&useSSL=false"]
}
]
}
},
"writer": {
"name": "oceanbasev10writer",
"parameter": {
"obWriteMode": "insert",
"column": [
"*"
],
"preSql": [
"truncate table orders"
],
"connection": [
{
"jdbcUrl": "||_dsc_ob10_dsc_||obdemo:my_test_obtenant||_dsc_ob10_dsc_||jdbc:oceanbase://192.168.56.210:2883/tpcc?useLocalSessionState=true&allowBatch=true&allowMultiQueries=true&rewriteBatchedStatements=true",
"table": [
"orders"
]
}
],
"username": "root",
"password":"oracle",
"writerThreadCount":2,
"batchSize": 1000,
"memstoreThreshold": "0.9"
}
}
}
]
}
}
启动任务
python ./datax/bin/datax.py mysql2ob.json