【mariadb】使用 mariadbbackup 工具重建备库

背景

备库异常,数据失效,现需要将主库数据导出至备库重新建立主从同步

准备工作

1. 确认关闭备库 
systemctl stop mysql

2. 移除无效的数据目录
rm -rf /var/lib/mysql/*

3. 复制附件中的包至该设备的/tmp下
如果需要 mariadbback 工具,需安装
rpm -ivh MariaDB-backup-10.3.15-1.el7.centos.x86_64.rpm  --nodeps

4. 创建承接备份文件的目录
mkdir /var/lib/mysql/backup

5. 创建新的数据目录
mkdir /var/lib/mysql/data

6. 确认配置文件
查看 server-id 等信息,保持唯一

主库操作

1. 物理备份数据,记录备份点的bin-log和pos
mariabackup --defaults-file=/etc/my.cnf --backup --parallel=3 -uroot -p**** -h127.0.0.1 --stream=xbstream  | gzip > /backup/backupstream.gz
使用 my.cnf 配置文件做备份,开启三个现成去压缩文件,使用流压缩为 gz 包

2. 给备库拷贝数据,rsync
rsync -avzP /backup/backupstream.gz root@ip:/var/lib/mysql/backup
注意:rsync 需要两个设备都安装

压缩完成之后
image

备库操作

准备并恢复数据
cd /var/lib/mysql/backup

解压
gunzip -c backupstream.gz | mbstream -x

准备
mariabackup --prepare --target-dir=/var/lib/mysql/backup --use-memory=16G

恢复数据
mariabackup --defaults-file=/etc/my.cnf --move-back --target-dir=/var/lib/mysql/backup

修改还原后的数据目录属主
chown -R mysql:mysql /var/lib/mysql/data

启动数据库
systemctl start  mysql

检查日志
/var/log/mysqld.log
日志中是否输出 ready for connections 字样

解压检查之后 prepare 结果
image

posted @ 2021-03-31 16:38  π=3.1415926  阅读(283)  评论(0编辑  收藏  举报