其他分享
首页 > 其他分享> > OceanBase使用OBLOADER、OBDUMPER进行导入导出

OceanBase使用OBLOADER、OBDUMPER进行导入导出

作者:互联网

需求背景

需要定时给OB进行数据备份,并且在需要时可以全量导入,所以只能通过脚本来减少手动操作的繁琐。

脚本示例

导出脚本

#!/bin/bash

# 这一步不能省,如果不设置定时运行时可能会有问题
export JAVA_HOME=/usr/jdk1.8

OB_DUMPER_HOME=/usr/local/ob-loader-dumper-3.1.0-SNAPSHOT

# 用户可指定多个
arr=(USER1 USER2)
DATA_BASE=/obdata
DATA_FILE=OBDATA-`date +%Y%m%d`

DB_BACK_HOME=$DATA_BASE/$DATA_FILE

mkdir -p $DB_BACK_HOME

cd $OB_DUMPER_HOME/bin

for DB in ${arr[*]}
do
	mkdir  $DB_BACK_HOME/$DB
    ./obdumper -h192.168.12.10 -P2883 -uSYS -p "test123" --public-cloud -c test01 -t test02 -D $DB --sql --ddl --table='*' --view='*' --function='*' --procedure='*' --trigger='*' --sequence='*' --package='*' -f $DB_BACK_HOME/$DB  
done

cd $DATA_BASE

# 压缩之后,并删除相应文件
tar -zcvf  ${DATA_FILE}.tar.gz ${DATA_FILE} --remove-files

导入脚本

!/bin/bash

export JAVA_HOME=/usr/jdk1.8

OB_DUMPER_HOME=/usr/local/ob-loader-dumper-3.1.0-SNAPSHOT
arr=(USER1 USER2)
DATA_BASE=/obdata
DATA_FILE=OBDATA-PWE-20220520

cd $DATA_BASE
rm -rf  $DATA_BASE/$DATA_FILE
tar zxvf ${DATA_FILE}.tar.gz


DB_BACK_HOME=$DATA_BASE/$DATA_FILE

mkdir -p $DB_BACK_HOME

cd $OB_DUMPER_HOME/bin

for DB in ${arr[*]}
do
    ./obloader -h192.168.12.10 -P 3306 -u SYS --password='test123' --public-cloud -c test01 -t test02 -D $DB --sql --ddl --replace-data --table='*' --view='*' --function='*' --procedure='*' --trigger='*' --sequence='*' --package='*' -f $DB_BACK_HOME/$DB  
done

rm -rf  $DATA_BASE/$DATA_FILE

参考资料

https://www.oceanbase.com/docs/enterprise/oceanbase-database-cn/V3.2.3/10000000000355327

标签:OBDUMPER,FILE,OceanBase,DB,--,BASE,OBLOADER,HOME,DATA
来源: https://www.cnblogs.com/bsmn/p/16496455.html