实现xtrabackup全量备份与全量恢复
xtrabackup安装
版本说明
(1)Percona XtraBackup 2.4版本,支持 MySQL 5.1 [1]、5.5、5.6 和 5.7服务器上的InnoDB数据库备份,但不支持MySQL 8.0 数据库备份。 (2)Percona XtraBackup8.0版本,仅支持MySQL 8.0服务器上存储引擎为InnoDB的数据库备份,但不支持在MySQL 8.0之前版本的数据库备份
前提安装好mysql
我选用mysql版本是5.7的,就用Percona XtraBackup 2.4版本的
下载XtraBackup
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.22/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.22-1.el7.x86_64.rpm
直接安装会报错,缺少xtrabackup
的依赖包,
下载libev依赖并安装
wget ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/libev-4.15-1.el6.rf.x86_64.rpmrpm -ivh libev-4.15-1.el6.rf.x86_64.rpm
安装perl(DBD::mysql)
yum install perl-DBD-MySQL
安装perl(Digest::MD5)
yum -y install rsync perl l perl-Digest-MD5
这些依赖安装完毕之后就可以安装xtrabackup了。
安装XtraBackup
rpm -ivh percona-xtrabackup-24-2.4.22-1.el7.x86_64.rpm
前提准备好了,开始备份
全量备份命令
innobackupex --user=root --password=root123 --port=3306 --host=127.0.0.1 --socket=/tmp/mysqld.sock --datadir=/usr/local/mysql/data --stream=tar /home |gzip>/home/mysql.tar.gz
执行完这个命令,不出错得话,会出一堆堆日志,头疼,只要最后出现completed OK!,就证明备份成功了
这个命令的参数:
--user #指定数据库备份用户–password #指定数据库备份用户密码–port #指定数据库端口,不填默认3306–host #指定备份主机,不填默认127.0.0.0或者localhost–socket #指定socket文件路径,docker容器里的mysql挂载目录data里,普通安装默认在/var/lib/mysql--datadir #指定mysql datadir路径,docker容器里的mysql挂载目录data里,普通安装默认在/var/lib/mysql--stream #指定流的格式做备份,–stream=tar,将备份文件归档--/home/mysql.tar.gz #备份的数据存储的位置,可以更改
全量备份恢复(需要停止备库mysql)
1)修改备库my.cnf文件
在my.cnf文件中加入以下配置
datadir=/usr/local/mysql/data 这个是你数据库数据存储的位置,备份恢复也会恢复到这里的数据
2)把之前你备份的数据包解压
tar -zxvf mysql.tar.gz
3)执行日志文件恢复
innobackupex --detaults-file=/etc/my.cnf --apply-log /home/
其中/home/为备份文件存放位置,同样出现completed OK!,就证明恢复成功了。
4)执行数据文件恢复
innobackupex --defaults-file=/etc/my.cnf --copy-back /home/
此命令会将数据文件恢复至my.cnf文件中datadir目录下
5)执行mysql用户授权
chown -R mysql:mysql /usr/local/mysql/
6)启动mysql
service mysqld start
至此备份全量恢复完毕
遇到的问题
当我在执行完用户授权后,启动MySQL的时候会出现
Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid)
大概意思是权限不够无法启动mysql,网上给了很多解决方法,我也是一个一个试出来的
实现xtrabackup全量备份与全量恢复相关推荐
- 全量备份,差量备份,增量备份的异同
作为一名运维工程师,在日常工作中会时常对各类重要数据进行备份,为了方便管理,运用何种备份方案是至关重要的. 今天在此简单说明下Linux运维中的备份种类:全量备份.增量备份.差异备份. 一.首先说一下 ...
- mysql xtrabackup还原_Xtrabackup备份、还原、恢复Mysql操作大全
#数据目录:/data/mysql $ mkdir -pv /backup/3306/20171107/{full,inc1,inc2} #本地 单实例 全量备份 $ innobackupex --d ...
- 企业级MySQL数据库备份方案:增量备份、全量备份、逻辑备份
一份好的备份方案无非包括以下几点: 为什么需要备份? 备份的方式有哪些? 某几种备份方式的区别在哪? 备份实战操作概述 恢复实战操作概述 其它备注信息 那么,此文将从以上几个角度,结合一些实际的实战经 ...
- DM8:达梦数据库定时自动全库备份与删除备份
DM8:达梦数据库定时自动全库备份与删除备份 环境介绍 1 备份条件 2 测试手动备份是否成功 2.1 报错 -718 2.2 错误解决方法 方法1: 在数据库执行SQL 方法2:重启 数据库实例服务 ...
- Percona XtraBackup 关于 MySQL备份还原的详细测试
Percona XtraBackup 关于 MySQL备份还原的详细测试 一. Percona XtraBackup 的优点. (1)无需停止数据库进行InnoDB热备: (2)增量备份MySQL: ...
- mysql 备份100G花费时间_利用xtrabackup 全量备份100G的数据恢复到单实例测试
利用xtrabackup 全量备份的mysql5.6.40实例的100G的数据恢复MySQL5.7.24实例上到单实例消耗的时间: 服务器的环境如下: dell r620 双颗CPU,单核心是12核心 ...
- xtrabackup 实现mysql的全量备份与增量备份
Percona XtraBackup是世界上唯一一款开源的免费MySQL热备份软件,可以为InnoDB和XtraDB数据库执行非阻塞备份. 使用Percona XtraBackup,可以获得以下好处: ...
- Mysql 备份工具XtraBackup全量备份
Percona安装:[url]http://donald-draper.iteye.com/admin/blogs/2314832[/url] 命令介绍: The database user used ...
- Xtrabackup全量备份(官网)
全量备份: xtrabackup --backup --target-dir=/data/backups/ –backup 表示创建一个备份 –target-dir 指定备份存储的位置,该位置如果不存 ...
- xtrabackup安装、进行全量备份增量备份
文章目录 xtrabackup安装 xtrabackup 常用命令 全量备份 模拟删库 做软连接 恢复数据 增量备份 停掉服务删除目录进行数据一致性 恢复数据库 xtrabackup安装 xtraba ...
最新文章
- HDU2988(Kruskal算法模版)
- 文件编码方式批量转换工具
- oracle 表结构语句,oracle查询表结构语句
- Andorid App内部跟随熊语言改变
- [Node.js] 模块化 -- fs文件读取模块
- 洛谷P1482 Cantor表(升级版) 题解
- Ctrl+F5为强制刷新
- C#类、方法的访问修饰符
- [233]树莓派裸机代码bootloader学习总结
- CS61B的入门必备的排坑手册
- thinkphp6 +阿里云短信验证码
- 如何一键下载或保存微博里面的短视频?
- appium元素坐标定位TouchAction
- 从今天起用2个月时间,学好PYTHON
- 通过ADB命令行卸载或删除你的Android设备中的应用
- 公众号文章链接被微信拦截(被封锁、被屏蔽、被和谐)的最新解决方法
- SQL注入之基础原理
- 用POI实现word转html,用到的jar包
- pagehelper mybatis yml文件配置
- 设置修改Tomcat的UTF-8编码