官方文档
https://www.percona.com/doc/percona-xtrabackup/2.4/index.html
Percona XtraBackup介绍
Percona XtraBackup是基于MySQL的服务器的开源热备份实用程序,在备份期间不会锁定您的数据库。
它可以备份MySQL 5.1 、5.5、5.6 和 5.7 服务器上的InnoDB、XtraDB 和MyISAM表中的 数据,以及带有 XtraDB的Percona Server for MySQL 。
Percona XtraBackup 二进制安装
Percona XtraBackup 连接配置
Percona XtraBackup需要能够连接到数据库服务器并在创建备份时、在某些情况下准备时以及在恢复时对服务器和datadir执行操作。为此,必须满足其执行的特权和权限要求。
权限是指允许系统用户在数据库服务器中进行的操作。它们是在数据库服务器上设置的,仅适用于数据库服务器中的用户。
权限是允许用户在系统上执行操作的权限,例如在某个目录上读取、写入或执行或启动/停止系统服务。它们是在系统级别设置的,仅适用于系统用户。
Percona XtraBackup 所需的权限
数据库用户需要对要备份的表/数据库具有以下权限:
-
RELOAD
和(除非指定了 –no-lock <innobackupex –no-lock>选项)以便在开始复制文件之前和开始复制文件,并且 在使用备份锁时需要此权限 。LOCK TABLES
FLUSH TABLES WITH READ LOCK
FLUSH ENGINE LOGS
LOCK TABLES FOR BACKUP
LOCK BINLOG FOR BACKUP
-
REPLICATION CLIENT
为了获得二进制日志位置。 -
CREATE TABLESPACE
为了导入表(请参阅恢复单个表)。 -
PROCESS
为了运行(这是强制性的),并且可以选择查看在服务器上运行的所有线程(请参阅改进的 FLUSH TABLES WITH READ LOCK 处理)。SHOW ENGINE INNODB STATUS
-
SUPER
为了在复制环境中启动/停止副本线程,请使用XtraDB Changed Page Tracking forIncremental Backups和改进 FLUSH TABLES WITH READ LOCK 处理。 -
CREATE
权限以创建PERCONA_SCHEMA.xtrabackup_history数据库和表。 -
ALTER
权限以升级PERCONA_SCHEMA.xtrabackup_history数据库和表。 -
INSERT
权限,以便将历史记录添加到PERCONA_SCHEMA.xtrabackup_history表。 -
SELECT
特权,以便使用 innobackupex –incremental-history-name或 innobackupex –incremental-history-uuid以便该功能在PERCONA_SCHEMA.xtrabackup_history表中查找innodb_to_lsn
值 。
创建具有完整备份所需的最低权限的数据库用户的 SQL 示例如下:
qpress 安装
xbstream 数据还原
解包备份文件
- 本文目标目录以topholder2_pre为数据文件恢复存储,根据实际情况替换为实际路径。
- topholder2.xbstrean 备份文件。
解压备份文件
-
xtrabackup
默认在解压缩时不删除原始的压缩文件,若需解压完删除原始的压缩文件,可在上面的命令中加上--remove-original
参数。
Prepare 备份文件