Xtrabackup 实操(mysql 热备系列三)

Xtrabackup 实操

网上太多错误文章,再看了官网,薅掉了几根头发之后,终于理清思路。为了自己和小伙伴们不踩坑,由此记录模拟实操,话不多说,开干!

​ Xtrabackup 作为mysql备份工具,在单机情况下需要停止mysql,来恢复数据。在主从等以及集群模式下,可以实现不停主库(不锁表)进行热备。

一、环境

mysql: 8.0.36

主:10.128.0.3

从:10.128.0.4

二、全量数据恢复

实操模拟准备:
1.创建一个目录用于存放备份文件:/home/admin/backup/
mkdir /home/admin/backup/ -p


2.创建数据库并向数据库的表中添加两条新数据
create database xtra;
use xtra;
create table test1(id int);
insert into test1 values(1),(2),(3);
create table test2(id int);
insert into test2 values(1),(2),(3);

	
3.全量备份:xtrabackup --backup -u用户名 -p --target-dir=保存路径
xtrabackup --backup -uroot -p`cat /root/mysql` --target-dir=/home/admin/backup/	


4.准备基本备份并停止数据库
xtrabackup --prepare --target-dir=/home/admin/backup/
systemctl stop mysqld


5.这时,再删除数据目录(database=/var/lib/mysql/data)
rm -rf /var/lib/mysql/data /var/lib/mysql/log


6.恢复数据库并重启数据库
xtrabackup --copy-back --target-dir=/home/admin/backup/
chown -R mysql.mysql /var/lib/mysql
systemctl start mysqld


7.查看数据库
use xtra
show tables;

三、增量备份恢复

实操模拟准备:
优先全量备份
xtrabackup --backup -uroot -p`cat /root/mysql` --target-dir=/home/admin/backup/	

1.向数据库的表中添加两条新数据
use xtra;
create table test3(id int);
insert into test3 values(1),(2
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值