一、介绍
xtrabackup是MySQL官方推荐的备份恢复工具,它可以在不停止MySQL服务器的情况下备份整个数据库或者只备份特定的表。
本文将从下载xtrabackup开始,介绍如何在Linux系统上安装和使用xtrabackup进行备份恢复操作。
二、下载
下载最新版本的xtrabackup:
wget https://www.percona.com/downloads/XtraBackup/LATEST/percona-xtrabackup-8.0.25-18.1.tar.gz
解压缩:
tar zxvf percona-xtrabackup-8.0.25-18.1.tar.gz
将二进制文件复制到系统二进制目录:
cd percona-xtrabackup-8.0.25-18.1 && cp -r ./bin/* /usr/local/bin/
三、安装与配置
安装所需的依赖库:
yum install -y numactl-devel
如果使用的是Debian系的操作系统:
sudo apt-get update sudo apt-get install -y libaio1 libev4 libnuma1 libcurl3-gnutls libmecab2
安装好依赖后,xtrabackup已经安装完成。在默认情况下,xtrabackup已经能够使用了。但是需要稍微地调整一下MySQL服务器的配置以便让xtrabackup能够连接上MySQL服务器,进行备份操作。
首先,编辑MySQL配置文件:
vi /etc/my.cnf
在“[mysqld]”中添加:
plugin-load=innodb=ha_innodb.so;innodb_trx=ha_innodb.so;innodb_locks=ha_innodb.so;innodb_lock_waits=ha_innodb.so;innodb_cms=ha_innodb.so;innodb_cmp_reset=ha_innodb.so;innodb_cmp=ha_innodb.so;innodb_cmpmem_reset=ha_innodb.so;innodb_cmpmem=ha_innodb.so
保存修改并重启MySQL服务以加载插件:
sudo systemctl restart mysql
四、备份恢复操作
xtrabackup包含两个主要命令:备份和恢复。
备份
xtrabackup可以进行两种不同类型的备份:full和incremental。
完整备份:
xtrabackup --backup --user=--password= --target-dir=
其中,
增量备份:
xtrabackup --backup --user=--password= --target-dir= --incremental-dir=
其中,
恢复
恢复完整备份:
xtrabackup --copy-back --target-dir=
其中,
恢复增量备份:
先恢复前一个完整备份:xtrabackup --copy-back --target-dir=接着恢复增量备份:xtrabackup --apply-log --redo-only --target-dir= --incremental-dir= 再次恢复全量备份:xtrabackup --apply-log --target-dir=
其中,
五、总结
xtrabackup是一款非常强大的MySQL备份恢复工具。本文介绍了如何下载、安装和使用xtrabackup进行备份恢复操作。除此之外,xtrabackup还有很多高级的使用方法,需要根据具体用途进行了解。在使用过程中,要注意备份的文件存储安全问题。