OceanBase分布式数据库物理备份与逻辑备份

OceanBase分布式数据库物理备份与逻辑备份

Deng YongJie's blog 438 2022-10-22

使用OCP云平台执行,物理全备与增备

https://www.oceanbase.com/docs/community-observer-cn-10000000000901603

当OCP平台故障时,可选择手动执行物理备份的恢复操作:

https://www.oceanbase.com/docs/community-observer-cn-10000000000901798

#必须要在每台OBserver节点都安装NFS客户端,需自建nfs服务端,可以查看上面的链接文档。
#每台OBserver、OceanBase节点都要挂载NFS
yum install nfs-utils -y
echo 'sunrpc.tcp_max_slot_table_entries=128' >> /etc/sysctl.conf
sysctl -w sunrpc.tcp_max_slot_table_entries=128
 
mkdir /backup
mount -tnfs4 -o rw,nfsvers=4.1,sync,lookupcache=positive,hard,timeo=600,wsize=1048576,rsize=1048576,namlen=255 10.16.0.61,10.16.0.62,10.16.0.63:/oceanbase-backup /backup/
chown -R admin.admin /backup/
 
#然后可以在OCP平台创建集群级别的物理全备任务,跑一次测试
https://www.oceanbase.com/docs/community-ocp-cn-10000000000866538

使用OBloader、OBdumper工具,导入和导出数据库。逻辑备份

#准备环境:https://www.oceanbase.com/docs/community-obloaderdumper-cn-10000000001150115

#首先在OCP机器或nfs机器,任意一台作为备份机器,安装Oracle JDK 1.8最新的小版本.注意别下载错了,否则提示无法系统不对无法安装。
#需要下载的是x64 RPM或tar.gz的包
https://www.oracle.com/java/technologies/downloads/#java8

#解压jdk
mkdir /usr/local/java && cd /usr/local/java
tar zxf jdk-8u351-linux-x64.tar.gz

vim /etc/profile
export JAVA_HOME=/usr/local/java/jdk1.8.0_351
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}/bin

source /etc/profile
java -version

#然后下载obloader和obdumper工具,需要版本与oceanbase相同,4.0
https://open.oceanbase.com/softwareCenter/community
unzip ob-loader-dumper-4.0.0.zip
cd ob-loader-dumper-4.0.0-RELEASE-ce

#性能调优,修改为可用物理内存的 60%。默认值:-Xms4G -Xmx4G。
vim bin/obdumper
JAVA_OPTS="$JAVA_OPTS -server -Xms4G -Xmx4G -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -Xss352K"

#然后去安装的节点,把obclient发送给备份机器
scp /root/oceanbase-all-in-one/obclient/u01/obclient/bin/obclient 10.16.2.141:/usr/bin/


#普通租户,导入数据文件,指定某个库
bin/obloader -h 10.16.2.117 -P 2883 -u root -p '4uBd~EYhLiUJF' -c obcluster -t monitor_tenant -D monitor_database  --all --sql -f /data/nfs_server/obdumper-backup