利用xtrabackup8完全,增量备份及还原MySQL8
利用xtrabackup8完全,增量备份及还原MySQL8
1、环境准备
| 服务器 | 作用 | 数据库版本 | xtrabackup版本 |
|---|---|---|---|
| 10.0.0.8 | 数据备份 | mysql8.0.26 | 8.0.28 |
| 10.0.0.18 | 数据还原 | mysql8.0.26 | 8.0.28 |
2、备份
[root@rocky8 ~]# ls
anaconda-ks.cfg percona-xtrabackup-80-8.0.28-20.1.el8.x86_64.rpm
[root@rocky8 ~]# yum install -y percona-xtrabackup-80-8.0.28-20.1.el8.x86_64.rpm
[root@rocky8 ~]# mkdir /data/backup
[root@rocky8 ~]# systemctl start mysqld.service
[root@rocky8 ~]# xtrabackup --backup --target-dir=/data/backup/base #完全备份
[root@rocky8 ~]# rz hellodb_innodb.sql
[root@rocky8 ~]# mysql < hellodb_innodb.sql #修改数据
[root@rocky8 ~]# mysql
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
mysql> insert students(name,age)values('wang',20); #修改数据
[root@rocky8 ~]# xtrabackup --backup --target-dir=/data/backup/inc1 --incremental-basedir=/data/backup/base #第一次增量备份
[root@rocky8 ~]# mysql
mysql> insert students(name,age)values('jack',22); #第二次修改数据
[root@rocky8 ~]# xtrabackup --backup --target-dir=/data/backup/inc2 --incremental-basedir=/data/backup/inc1 #第二次增量备份
[root@rocky8 ~]# du -sh /data/backup/* #观察目录文件的大小
70M /data/backup/base
4.9M /data/backup/inc1
2.0M /data/backup/inc2
[root@rocky8 ~]# scp -r /data/backup/* root@10.0.0.28:/data/backup/ #拷贝到远程主机
[root@rocky ~]# cd /data/backup #远程主机查看拷贝过来生成的三个文件
[root@rocky backup]# ls
base inc1 inc2
3、还原
# 还原机操作:
[root@rocky ~]# yum install -y percona-xtrabackup-80-8.0.28-20.1.el8.x86_64.rpm
##预准备完成备份,此选项--apply-log-only 阻止回滚未完成的事务
[root@rocky ~]# xtrabackup --prepare --apply-log-only --target-dir=/data/backup/base
#合并第1次增量备份到完全备份
[root@rocky ~]# xtrabackup --prepare --apply-log-only --target-dir=/data/backup/base --incremental-dir=/data/backup/inc1
######## 合并第2次增量备份到完全备份:最后一次还原不需要加选项--apply-log-only #########
[root@rocky ~]# xtrabackup --prepare --target-dir=/data/backup/base --incremental-dir=/data/backup/inc2
[root@rocky ~]# systemctl stop mysqld
[root@rocky ~]# cd /data/backup/base/
[root@rocky base]# xtrabackup --copy-back --target-dir=/data/backup/base #执行这一步需要进入到备份目录下,也就是base目录下,要不然会报找不到备份文件 #或者执行下面操作也可以
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@centos ~]#cp -r /backup/base/* /var/lib/mysql #执行了上边命令就不用执行这一步
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@rocky base]# chown -R mysql. /var/lib/mysql
[root@rocky base]# systemctl start mysqld.service
#验证
[root@rocky ~]# mysql
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| hellodb |
mysql> use hellodb
mysql> select * from students;
| 26 | wang | 20 | F | NULL | NULL |
| 27 | jack | 22 | F | NULL | NULL |
利用xtrabackup8完全,增量备份及还原MySQL8的更多相关文章
- mysql 利用binlog增量备份,还原实例
mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 标签:binlog, mysql, mysqldump, 增量备份 一,什么是增量备份 增量 ...
- Mysql性能优化三(分表、增量备份、还原)
接上篇Mysql性能优化二 对表进行水平划分 如果一个表的记录数太多了,比如上千万条,而且需要经常检索,那么我们就有必要化整为零了.如果我拆成100个表,那么每个表只有10万条记录.当然这需要数据在逻 ...
- 通过innobackupex实现对MySQL的增量备份与还原
备份 增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --password=test /backup/ 备注:test是我的MySQL服务的root用户的密码,/b ...
- 瞧一瞧!这儿实现了MongoDB的增量备份与还原(含部署代码)
一 需求描述 我们知道数据是公司的重要资产,业务的系统化.信息化就是数字化.数据高效的存储与查询是系统完善和优化的方向,而数据库的稳定性.可靠性是实现的基础.高可用和RPO(RecoveryPoint ...
- Xtrabackup 全备和还原以及增量备份和还原
目录 MySQL环境介绍 全备和还原 准备备份目录 创建测试数据 全量备份 模拟删除数据 还原数据操作 第一步 备份备份文件 第二步 关闭数据库 第三步 移除数据库的data目录 第四步 恢复前准备 ...
- Mysql大数据备份和增量备份及还原
目前主流的有两个工具可以实现物理热备:ibbackup和xtrabackup ;ibbackup是需要授权价格昂贵,而xtrabackup功能比ibbackup强大而且是开源的 Xtrabackup提 ...
- innobackupex实现对MySQL的增量备份与还原
备份增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --defaults-file=/etc/my.cnf --user root --password cheng ...
- MySQL 利用xtrabackup进行增量备份详细过程汇总 (转)
Xtrabackup下载.安装以及全量备份请参考:http://blog.itpub.net/26230597/viewspace-1465772/ 1,创建mysql备份用户 mysql -uroo ...
- linux下利用ruby做系统备份与还原
啥都不说了,都在代码里 :) #!/usr/bin/ruby BAK_PATH = "/media/backup.tar.xz" def to_backup exclude_fil ...
随机推荐
- PerfView专题 (第六篇):如何洞察 C# 中 GC 的变化
一:背景 在洞察 GC 方面,我觉得市面上没有任何一款工具可以和 PerfView 相提并论,这也是为什么我会在 WinDbg 之外还要学习这么一款工具的原因,这篇我们先简单聊聊 PerfView 到 ...
- 【java】学习路线13-多态继承
/*多态创建一个父类的对象,用子类去初始化如果要使用子类的方法,则需要把对象强制转换为子类的(xx)xxx*/public class Learn01{ public static void m ...
- ubuntu生成ssh_key
ssh-keygen cat ~/.ssh/id_rsa.pub
- KingbaseES 数据库大小写敏感特性
针对不同版本.是否启用大小写敏感,特征汇总如下:
- Linux 常用脚本命令
Linux 常用(脚本)命令 1. 统计目录下文件个数 ll |grep "^-"|wc -1 解释 grep "^-"表示抓取以-开头的行(其他忽略)
- 全网最全Redis学习
一.Redis简介 Redis是以Key-Value形式进行存储的NoSQL数据库,C语言进行编写的.平时操作的数据都在内存中,效率特高,读的效率110000/s,写81000/s,所以多把Redis ...
- 【Azure 环境】Azure Resource Graph Explorer 中实现动态数组数据转换成多行记录模式 - mv-expand
问题描述 想对Azure中全部VM的NSG资源进行收集,如果只是查看一个VM的NSG设定,可以在门户页面中查看表格模式,但是如果想把导出成表格,可以在Azure Resource Graph Expl ...
- 3.云原生之Docker容器三大核心概念介绍
转载自:https://www.bilibili.com/read/cv15181760/?from=readlist docker search --no-trunc=false [镜像名称] #搜 ...
- 详述ProxySQL的路由规则 --- 实践篇
转载自:https://blog.csdn.net/weixin_30911809/article/details/98601663 关于ProxySQL路由的简述 当ProxySQL收到前端app发 ...
- Prometheus样本采集器汇总
系统基本信息 Linux Servers: Exporter https://github.com/prometheus/node_exporter Dashboard https://grafana ...