MysqlMySQL数据库数据库

MySql备份·增量备份percona

2023-02-06  本文已影响0人  技术老男孩

一、增量备份定义:

二、增量备份percona软件说明:

三、增量备份语法格式及参数说明:

完全备份格式

innobackupex -uroot -p密码 备份目录 [参数]

增量备份格式

innobackupex -uroot -p密码 备份目录 --incremental 新数据存放目录 --incremental-basedir=上次备份目录 [参数]

准备恢复数据格式

innobackupex --apply-log --redo-only 完全备份目录

合并数据格式(合并的顺序要与增量备份的顺序一致)

innobackupex --apply-log --redo-only 完全备份目录 --incremental-dir=新数据存放目录

拷贝数据格式

innobackupex --copy-back 完全备份目录

类型 参数 说明
备份 --no-timestamp 不用时间戳创建子目录存储备份数据
--incremental /newdir 备份新数据
newdir:新数据备份目录
--incremental-basedir=/olddir 上次备份
olddir:上次备份目录
恢复 --apply-log --redo-only 准备恢复数据
--incremental-dir 合并数据中指定增量备份数据存放目录
--copy-back 将合并完的完全备份数据拷贝数据到默认/自定义数据库目录下

四、增量备份及恢复数据具体操作步骤:

第一步:安装命令软件

[root@host50 ~]# yum -y install libev-4.15-1.el6.rf.x86_64.rpm 
[root@host50 ~]# yum -y install percona-xtrabackup-24-2.4.7-1.el7.x86_64.rpm
# 查看帮助
[root@host50 ~]# man innobackupex

第二步:备份

[root@host50 ~]# innobackupex -uroot -p密码 /fullbak  
--no-timestamp
[root@host50 ~]# innobackupex –uroot –p密码  --incremental /new2 
--incremental-basedir=/fullbak  --no-timestamp
[root@host50 ~]# innobackupex –uroot –p密码  --incremental /new3 
--incremental-basedir=/new2 --no-timestamp
[root@host50 ~]# innobackupex -uroot -p密码  --incremental /new4
--incremental-basedir=/new3 --no-timestamp
[root@host50 ~]# innobackupex -uroot -p密码  --incremental /new5
--incremental-basedir=/new4 --no-timestamp
[root@host50 ~]# innobackupex -uroot -p密码  --incremental /new6
--incremental-basedir=/new5 --no-timestamp
[root@host50 ~]# innobackupex -uroot -p密码  --incremental /new7
--incremental-basedir=/new6 --no-timestamp

第三步:准备恢复数据并合并

#  告诉innobackupex从什么位置开始合并数据
[root@host51 ~]# innobackupex --apply-log --redo-only /opt/fullbak/
# 合并周二增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/ 
--incremental-dir=/opt/new2
# 合并周三增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/ 
--incremental-dir=/opt/new3   
# 合并周四增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/  
--incremental-dir=/opt/new4 
# 合并周五增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/  
--incremental-dir=/opt/new5 
# 合并周六增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/  
--incremental-dir=/opt/new6 
# 合并周日增量备份数据
[root@host51 ~]# innobackupex --apply-log --redo-only /fullbak/  
--incremental-dir=/opt/new7 

第四步:恢复数据

[root@host51 ~]# systemctl stop mysqld
[root@host51 ~]# rm -rf /var/lib/mysql/*
# 把合并后的数据拷贝到数据库目录下
[root@host51 ~]# innobackupex --copy-back /opt/fullbak
# 修改数据库目录的所有者和组用户为mysql
[root@host51 ~]# chown -R mysql:mysql /var/lib/mysql        
# 重启数据库服务
[root@host51 ~]# systemctl start mysqld
上一篇下一篇

猜你喜欢

热点阅读