mysql xtrabackup安装_MySQL工具 - xtrabackup安装

版本选择

1fd030f5c5e23303550722b10e7c0e0c.png

版本之间的区别:

8.0是针对8.0开发的,不兼容5.X的版本

2.4针对5.7开发,兼容5.6,5.5

2.3针对5.6开发,兼容5.5

2.2针对5.5开发

安装

下载页面:

https://www.percona.com/downloads/Percona-XtraBackup-LATEST/

这里以CentOS 6 ,Percona MySQL Server 5.6为例,安装的工具是2.3.5版本:

yum -y install https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.3.5/binary/redhat/6/x86_64/percona-xtrabackup-2.3.5-1.el6.x86_64.rpm

安装XtraBackup后,其实会有几个工具:

innobackupex:这个是其实是下面三个工具的一个perl脚本封装,可以备份MyISAM, InnoDB, XtraDB表。但在处理Myisam时需要加一个读锁。

xtrabackup:一个由C编译而来的二进制文件,只能备份InnoDB和XtraDB数据。

xbcrypt:用来加密或解密备份的数据。

xbstream:用来解压或压缩xbstream格式的压缩文件。

建议使用perl封装的innobackupex来作数据库备份,因为比较容易使用。

innobackupex命令参数

19a528685c25d3a2164f8b616bffce9b.png

--defaults-file 数据库的配置文件路径,感觉本地备份不写也可以,远程没测试过。

--apply-log 准备在一个备份上启动mysql服务。

--copy-back 从备份目录拷贝数据,索引,日志到my.cnf文件里规定的初始位置。

--no-timestamp 创建备份时不自动生成时间目录,可以自定义备份目录名例如: /backups/mysql/base

--databases 用于指定要备份的数据库, 多个库文件使用方法: “database1 database2″

--incremental 在全备份的基础上进行增量备份,后跟增量备份存贮目录路径

--incremental-basedir=DIRECTORY 增量备份所需要的全备份路径目录或上次做增量备份的目录路径

--incremental-dir=DIRECTORY 增量备份存贮的目录路径

--redo-only 用于准备增量备份内容把数据合并到全备份目录,配合–incremental-dir 增量备份目录使用。

--force-non-empty-directories 如果是特定库备份还原,不需要删掉整个mysql目录,只是特定库的及相关文件就可以,还原时加上此参数就不会报错。

使用

备份所有数据库

mkdir -p /data/dbbackup/2019-04-28innobackupex --defaults-file=/etc/my.cnf --user root --password password --no-timestamp /data/dbbackup/2019-04-28/all

备份文件:

backup-my.cnf 备份命令用到的配置选项信息;

ibdata1 备份的表空间文件;

xtrabackup_binary 备份中用到的xtrabackup的可执行文件;

xtrabackup_binlog_info mysql服务器当前正在使用的二进制日志文件及至备份这一刻为止二进制日志事件的位置;

xtrabackup_logfile 份的重做日志文件。

xtrabackup_checkpoints 备份类型(如完全或增量)、备份状态(如是否已经为prepared状态)和LSN(日志序列号)范围信息;

其他目录 对应备份数据库的目录

全量恢复

1、先关闭数据库

2、恢复文件

innobackupex --copy-back --defaults-file=/etc/my.cnf /data/dbbackup/2019-04-28/all

3、修改权限

chown mysql.mysql /data/mysql -R

4、启动数据库

备份单独几个库

innobackupex --defaults-file=/etc/my.cnf --user root --password password --databases="mysql testdb" --no-timestamp /data/dbbackup/2019-04-28/somedbs

单独恢复几个库:可以在复制全量备份中的几个文件,和需要恢复的目录。

备份成压缩文件

innobackupex --defaults-file=/etc/my.cnf --user root --password password --no-timestamp --stream=tar ./ | gzip - > /data/dbbackup/2019-04-28/somedbs.tar.gz

增量备份

增量备份依赖于全量备份,因此如果没有全量备份,需要先创建一份全量备份。

innobackupex --user root --password password --no-timestamp /data/dbbackup/2019-04-28/all

首次增量备份,incremental-basedir指定的应该是全量备份的目录

innobackupex --defaults-file=/etc/my.cnf --no-timestamp --incremental-basedir=/data/dbbackup/2019-04-28/all --user=root --password=password --incremental /data/dbbackup/2019-04-28/inc1

接下去的增量备份,incremental-basedir指定的就是上一次增量备份的目录

innobackupex --defaults-file=/etc/my.cnf --no-timestamp --incremental-basedir=/data/dbbackup/2019-04-28/inc1 --user=root --password=password --incremental /data/dbbackup/2019-04-28/inc2

增量还原

先拼凑一份完整的备份会报错到全量备份的目录中,带日期的目录。2019-04-28_19-59-23

innobackupex --apply-log-only --redo-log /data/dbbackup/2019-04-28/all --incremental-dir=/data/dbbackup/2019-04-28/inc3 --user root --password password

6ba56efc6f7ecd5ef4d4c273228232e2.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值