MySQL 备份 Xtrabackup

MySQL 备份 Xtrabackup
目录mysql

    1. Xtrabackup 1
  1. 1.1 Xtrabackup 简介 1
  2. 1.1 Xtrabackup 原理 1
  3. 1.1.1 Xtrabackup 备份过程 1
  4. 1.1.2 Xtrabackup 全量备份恢复 2
  5. 1.1.3 Xtrabackup 增量备份原理 2
  6. 1.1.4 Xtrabackup 增量备份恢复 2
  7. 1.1.5 安装Xtrabackup 2
  8. 1.1.6 检查安装结果 2
    1. 使用xtrabackup实现对MySQL的备份 3
  9. 2.1 基于全量备份与恢复 3
  10. 2.1.1 全量备份 3
  11. 2.1.2 全量备份恢复 5
  12. 2.2 基于全量备份的增量备份与恢复 11
  13. 2.2.1 增量备份 11
  14. 2.2.2 增量恢复 12
  15. 2.3 单库备份与恢复 14
  16. 2.4 备份文件归档压缩 15
  17. 2.4.1 压缩 15
  18. 2.4.2 解压 16

1.Xtrabackup
1.1 Xtrabackup 简介
Xtrabackup是一个对InnoDB作数据备份的工具,支持在线热备份(备份时候不影响数据读写),是商业备份工做InnoDB hotbackup的一个很好的替代品。sql

特色
1.无需中止数据库进行InnoDB热备
2.增量备份MySQL
3.流压缩到传输到其余服务器
4.能比较容易的建立主从同步
5.备份MySQL时不会增大服务器负载数据库

了解备份方式
1.热备份:读写不受影响(mysqldump --> innodb)
2.温备份:仅能够执行读操做(mysqldump --> myisam)
3.冷备份:离线备份,读写都不可用
4.逻辑备份:讲数据导出文本文件中(mysqldump)
5.物理备份:讲数据文件拷贝(xtrabackup,mysqlhotcopy)
6.完成备份:备份全部数据
7.增量备份:仅备份上次完整备份或者增量备份以来变化的数据
8.差别备份:仅备份上次完整备份以来变化的数据bash

1.1 Xtrabackup 原理
1.1.1 Xtrabackup 备份过程
innobackupex备份过程以下图:
备份开始时首先会开启一个后台检测进程,实时检测mysql redo的变化,一旦发现redo中有新的日志写入,马上将日志记入后台日志文件xtrabackup_log中。以后复制innodb的数据文件和系统表空间文件ibdata1,待复制结束后,执行flush tables with read lock操做,复制.frm,MYI,MYD,等文件(执行flush tableswith read lock的目的是为了防止数据表发生DDL操做,而且在这一时刻得到binlog的位置)最后会发出unlock tables,把表设置为可读可写状态,最终中止xtrabackup_log。
1.1.2 Xtrabackup 全量备份恢复
这一阶段会启动xtrabackup内嵌的innodb实例,回放xtrabackup日志xtrabackup_log,将提交的事务信息变动应用到innodb数据/表空间,同时回滚未提交的事务(这一过程相似innodb的实例恢复)。恢复过程以下图:服务器

1.1.3 Xtrabackup 增量备份原理
innobackupex增量备份过程当中的"增量"处理,其实主要是相对innodb而言,对myisam和其余存储引擎而言,它仍然是全拷贝(全备份)"。增量"备份的过程主要是经过拷贝innodb中有变动的"页"(这些变动的数据页指的是"页"的LSN大于xtrabackup_checkpoints中给定的LSN)。增量备份是基于全备的,第一次增备的数据必需要基于上一次的全备,以后的每次增备都是基于上一次的增备,最终达到一致性的增备。增量备份的过程以下,和全备的过程很相似,区别仅在第2步。session

1.1.4 Xtrabackup 增量备份恢复
和全备恢复相似,也须要两步,一是数据文件的恢复,如图4,这里的数据来源由3部分组成:全备份,增量备份和xtrabackup log。二是对未提交事务的回滚,如图所示:app

1.1.5 安装Xtrabackup
安装Percona XtraBackup Percona yum资源库socket

yum install -y \
http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
yum list|grep percona
yum install percona-xtrabackup-22
1.1.6 检查安装结果
[root@localhost ~]# rpm -qa|grep xtrabackup
percona-xtrabackup-22-2.2.13-1.el7.x86_64ide

Xtrabackup中主要包含两个工具:
xtrabackup:是用于热备innodb,xtradb表中数据的工具,不能备份其余类型的表,也不能备份数据表结构;
innobackupex:是将xtrabackup进行封装的perl脚本,提供了备份myisam表的能力。
经常使用选项:  
   --host     指定主机
   --user     指定用户名
   --password     指定密码
   --port     指定端口
   --databases     指定数据库
   --incremental    建立增量备份
   --incremental-basedir   指定包含彻底备份的目录
   --incremental-dir      指定包含增量备份的目录   
   --apply-log        对备份进行预处理操做             
     通常状况下,在备份完成后,数据尚且不能用于恢复操做,由于备份的数据中可能会包含还没有提交的事务或已经提交但还没有同步至数据文件中的事务。所以,此时数据文件仍处理不一致状态。“准备”的主要做用正是经过回滚未提交的事务及同步已经提交的事务至数据文件也使得数据文件处于一致性状态。
   --redo-only      不回滚未提交事务
   --copy-back     恢复备份目录
     使用innobakupex备份时,其会调用xtrabackup备份全部的InnoDB表,复制全部关于表结构定义的相关文件(.frm)、以及MyISAM、MERGE、CSV和ARCHIVE表的相关文件,同时还会备份触发器和数据库配置信息相关的文件,这些文件会被保存至一个以时间命令的目录中。
  备份的同时,innobackupex还会在备份目录中建立以下文件:
   (1)xtrabackup_checkpoints —— 备份类型(如彻底或增量)、备份状态(如是否已经为prepared状态)和LSN(日志序列号)范围信息;每一个InnoDB页(一般为16k大小)都会包含一个日志序列号,即LSN。LSN是整个数据库系统的系统版本号,每一个页面相关的LSN可以代表此页面最近是如何发生改变的。
   (2)xtrabackup_binlog_info —— mysql服务器当前正在使用的二进制日志文件及至备份这一刻为止二进制日志事件的位置。
   (3)xtrabackup_binlog_pos_innodb —— 二进制日志文件及用于InnoDB或XtraDB表的二进制日志文件的当前position。
   (4)xtrabackup_binary —— 备份中用到的xtrabackup的可执行文件;
   (5)backup-my.cnf —— 备份命令用到的配置选项信息;
在使用innobackupex进行备份时,还可使用--no-timestamp选项来阻止命令自动建立一个以时间命名的目录;如此一来,innobackupex命令将会建立一个BACKUP-DIR目录来存储备份数据。
  若是要使用一个最小权限的用户进行备份,则可基于以下命令建立此类用户:
   mysql> CREATE USER 'backuser'@'localhost' IDENTIFIED BY 'backuser'   建立用户
   mysql> REVOKE ALL PRIVILEGES,GRANT OPTION FROM 'backuser'@'localhost'; 回收此用户全部权限
   mysql> GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT ON . TO 'baskuser'@'localhost';
         受权刷新、锁定表、用户查看服务器状态
   mysql> FLUSH PRIVILEGES;   刷新受权表
备份过程 :
   注意:备份时需启动MySQL,恢复时需关闭MySQL,清空mysql数据目录且不能从新初始化,恢复数据后应该当即进行一次彻底备份工具

  1. 使用xtrabackup实现对MySQL的备份
    2.1 基于全量备份与恢复
    2.1.1 全量备份
    全量备份与恢复
    备份
    innobackupex --user=root --password=root --defaults-file=/etc/my.cnf /opt/
    恢复
    innobackupex --apply-log /opt/2017-01-05_11-04-55/
    innobackupex --copy-back --defaults-file=/etc/my.cnf /opt/2017-01-05_11-04-55/
    彻底备份:

[root@localhost backup]# mysqladmin -uroot password root
Warning: Using a password on the command line interface can be insecure.
[root@localhost opt]# innobackupex --user=root --password=root --defaults-file=/etc/my.cnf /opt/
#语法解释说明:
#1. --user=root 指定备份的用户
#2. --password=root指定备份用户的密码
#3. --defaults-file=/etc/my.cnf 指定的备份数据的配置文件
#4. /opt/ 指定备份后的数据保存路径

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 11:04:55 innobackupex: Executing a version check against the server...
170105 11:04:55 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 11:04:55 innobackupex: Connected to MySQL server
170105 11:04:55 innobackupex: Done.
170105 11:04:55 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 11:04:55 innobackupex: Connected to MySQL server
170105 11:04:55 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".

innobackupex: Using server version 5.6.35-log

innobackupex: Created backup directory /opt/2017-01-05_11-04-55

170105 11:04:55 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/etc/my.cnf" --defaults-group="mysqld" --backup --suspend-at-end --target-dir=/opt/2017-01-05_11-04-55 --innodb_log_file_size="50331648" --innodb_data_file_path="ibdata1:12M:autoextend" --tmpdir=/tmp --extra-lsndir='/tmp'
innobackupex: Waiting for ibbackup (pid=25098) to suspend
innobackupex: Suspend file '/opt/2017-01-05_11-04-55/xtrabackup_suspended_2'

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /var/lib/mysql
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648

log scanned up to (1666902)
xtrabackup: Generating a list of tablespaces
[01] Copying ./ibdata1 to /opt/2017-01-05_11-04-55/ibdata1
[01] ...done
[01] Copying ./mysql/innodb_table_stats.ibd to /opt/2017-01-05_11-04-55/mysql/innodb_table_stats.ibd
[01] ...done
[01] Copying ./mysql/innodb_index_stats.ibd to /opt/2017-01-05_11-04-55/mysql/innodb_index_stats.ibd
[01] ...done
[01] Copying ./mysql/slave_relay_log_info.ibd to /opt/2017-01-05_11-04-55/mysql/slave_relay_log_info.ibd
[01] ...done
[01] Copying ./mysql/slave_master_info.ibd to /opt/2017-01-05_11-04-55/mysql/slave_master_info.ibd
[01] ...done
[01] Copying ./mysql/slave_worker_info.ibd to /opt/2017-01-05_11-04-55/mysql/slave_worker_info.ibd
[01] ...done
[01] Copying ./leco/student.ibd to /opt/2017-01-05_11-04-55/leco/student.ibd
[01] ...done
log scanned up to (1666902)
xtrabackup: Creating suspend file '/opt/2017-01-05_11-04-55/xtrabackup_suspended_2' with pid '25098'

170105 11:04:57 innobackupex: Continuing after ibbackup has suspended
170105 11:04:57 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG TABLES...

log scanned up to (1666902)
170105 11:04:57 innobackupex: Executing FLUSH TABLES WITH READ LOCK...
170105 11:04:57 innobackupex: All tables locked and flushed to disk

170105 11:04:57 innobackupex: Starting to backup non-InnoDB tables and files
innobackupex: in subdirectories of '/var/lib/mysql/'
innobackupex: Backing up files '/var/lib/mysql//mysql/.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (74 files)
innobackupex: Backing up file '/var/lib/mysql//leco/db.opt'
innobackupex: Backing up file '/var/lib/mysql//leco/student.frm'
innobackupex: Backing up files '/var/lib/mysql//performance_schema/
.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (53 files)
170105 11:04:58 innobackupex: Finished backing up non-InnoDB tables and files

170105 11:04:58 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG ENGINE LOGS...
170105 11:04:58 innobackupex: Waiting for log copying to finish

xtrabackup: The latest check point (for incremental): '1666902'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (1666902)

xtrabackup: Creating suspend file '/opt/2017-01-05_11-04-55/xtrabackup_log_copied' with pid '25098'
xtrabackup: Transaction log of lsn (1666902) to (1666902) was copied.
170105 11:04:59 innobackupex: All tables unlocked

innobackupex: Backup created in directory '/opt/2017-01-05_11-04-55'
innobackupex: MySQL binlog position: filename 'mysql-bin.000001', position 430
170105 11:04:59 innobackupex: Connection to database server closed
170105 11:04:59 innobackupex: completed OK!
说明保存成功。
在备份的同时,备份数据会在备份目录下建立一个以当前时间为名字的目录存放备份文件。
各文件说明:
(1)xtrabackup_checkpoints —-备份类型(如彻底或增量)、备份状态(如是否已经没prepare状态)和LSN(日志序列号)范围信息
每一个InnoDB页(一般大小为16K)都会包含一个日志序列号,即LSN,LSN是整个数据库系统的系统版本号,每一个页面相关的LSN可以表名此页面最近是如何发生改变的。
backup_type = full-backuped
from_lsn = 0
to_lsn = 2097320
last_lsn = 2097320
compact = 0
(2)xtrabackup_binlog_info —-mysql服务器当前正在使用的二进制日志及备份这一刻为二进制日志事件的位置
(3)xtrabackup_pos_innodb —-二进制日志及用于InnoDB或XtraDB表的二进制日志的当前posistion。
(4)xtrabackup_binary —-备份中用到的xtrabackup的可执行文件
(5)backup-my.cnf —- 备份命令用到的配置选项信息;
在使用innobackupex命令备份时吗还可使用–no-timestamp选项来阻止命令自动建立一个以时间命名的目录
innobackupex命令将会建立一个BACKUP-DIR目录来存储备份数据
还须要注意,备份数据库的用户须要具备相对应的权限,若是要使用一个最小权限的用户进行备份可使用如下参数:
mysql> GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON . TO ‘bkpuser’@’localhost’;       
mysql> FLUSH PRIVILEGES;

在使用innobackupex进行备份
[root@localhost opt]# ll /opt/
total 4
drwxr-xr-x. 5 root root 4096 Jan 5 11:04 2017-01-05_11-04-55

[root@localhost opt]# systemctl stop mysql
[root@localhost opt]# grep datadir /etc/my.cnf
datadir=/var/lib/mysql
[root@localhost opt]# cd /var/lib/mysql
[root@localhost mysql]# rm -rf *

2.1.2 全量备份恢复
准备一个完整备份(prepare)

在使用innobackup进行备份时候,还可使用--no-timestamp选项来阻止命令自动建立一个时间命名的目录。如此一来,innobackupex命令将会建立一个BACKUP-DIR目录来储存备份数据在通常状况下,在备份完成后,数据且尚不能用于恢复操做,由于备份的数据中可能包含还没有提交的事物或者已经提交但还没有同步至数据文件中的事物,所以此时数据文件仍然处于不一致状态,准备的主要做用正是经过回滚未提交的事物及同步已经提交的事物至数据文件也使得数据文件处于一致状态。

Innobackupex,命令的--apply-log选项能够实现上述功能,
[root@localhost mysql]# innobackupex --apply-log /opt/2017-01-05_11-04-55/

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 11:19:14 innobackupex: Starting the apply-log operation

IMPORTANT: Please check that the apply-log run completes successfully.
At the end of a successful apply-log run innobackupex
prints "completed OK!".

170105 11:19:14 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/opt/2017-01-05_11-04-55/backup-my.cnf" --defaults-group="mysqld" --prepare --target-dir=/opt/2017-01-05_11-04-55

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
xtrabackup: cd to /opt/2017-01-05_11-04-55
xtrabackup: This target seems to be not prepared yet.
xtrabackup: xtrabackup_logfile detected: size=2097152, start_lsn=(1666902)
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 1
xtrabackup: innodb_log_file_size = 2097152
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 1
xtrabackup: innodb_log_file_size = 2097152
xtrabackup: Starting InnoDB instance for recovery.
xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
InnoDB: Using atomics to ref count buffer pool pages
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Memory barrier is not used
InnoDB: Compressed tables use zlib 1.2.7
InnoDB: Using CPU crc32 instructions
InnoDB: Initializing buffer pool, size = 100.0M
InnoDB: Completed initialization of buffer pool
InnoDB: Highest supported file format is Barracuda.
InnoDB: The log sequence numbers 1663530 and 1663530 in ibdata files do not match the log sequence number 1666902 in the ib_logfiles!
InnoDB: Database was not shutdown normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages
InnoDB: from the doublewrite buffer...
InnoDB: Last MySQL binlog file position 0 1451, file name mysql-bin.000001
InnoDB: 128 rollback segment(s) are active.
InnoDB: Waiting for purge to start
InnoDB: 5.6.24 started; log sequence number 1666902

[notice (again)]
If you use binary log and don't use any hack of group commit,
the binary log position seems to be:
InnoDB: Last MySQL binlog file position 0 1451, file name mysql-bin.000001

xtrabackup: starting shutdown with innodb_fast_shutdown = 1
InnoDB: FTS optimize thread exiting.
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 1666912

170105 11:19:16 innobackupex: Restarting xtrabackup with command: xtrabackup --defaults-file="/opt/2017-01-05_11-04-55/backup-my.cnf" --defaults-group="mysqld" --prepare --target-dir=/opt/2017-01-05_11-04-55
for creating ib_logfile*

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
xtrabackup: cd to /opt/2017-01-05_11-04-55
xtrabackup: This target seems to be already prepared.
xtrabackup: notice: xtrabackup_logfile was already used to '--prepare'.
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648
xtrabackup: Starting InnoDB instance for recovery.
xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
InnoDB: Using atomics to ref count buffer pool pages
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Memory barrier is not used
InnoDB: Compressed tables use zlib 1.2.7
InnoDB: Using CPU crc32 instructions
InnoDB: Initializing buffer pool, size = 100.0M
InnoDB: Completed initialization of buffer pool
InnoDB: Setting log file ./ib_logfile101 size to 48 MB
InnoDB: Setting log file ./ib_logfile1 size to 48 MB
InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0
InnoDB: New log files created, LSN=1666912
InnoDB: Highest supported file format is Barracuda.
InnoDB: 128 rollback segment(s) are active.
InnoDB: Waiting for purge to start
InnoDB: 5.6.24 started; log sequence number 1667084

[notice (again)]
If you use binary log and don't use any hack of group commit,
the binary log position seems to be:
InnoDB: Last MySQL binlog file position 0 1451, file name mysql-bin.000001

xtrabackup: starting shutdown with innodb_fast_shutdown = 1
InnoDB: FTS optimize thread exiting.
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 1667094
170105 11:19:18 innobackupex: completed OK!
在实现准备过程当中,innobackupex一般还可使用--user-memory选项来指定其可使用的内存大小。默认一般是100M,若是有足够的内存使用,能够多划分一些给内存准备prepare,以提升其完成速度。

从一个完整备份中恢复数据
Innobackupex命令的--copy-back选项用于执行恢复操做,其经过复制全部的数据相关文件到mysql服务器的DATADIR目录来执行恢复过程,innobackupex经过backup-my.cnf来获取DATADIR目录相关信息。
开始恢复
[root@localhost mysql]# innobackupex --copy-back --defaults-file=/etc/my.cnf /opt/2017-01-05_11-04-55/

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 11:26:34 innobackupex: Starting the copy-back operation

IMPORTANT: Please check that the copy-back run completes successfully.
At the end of a successful copy-back run innobackupex
prints "completed OK!".

innobackupex: Starting to copy files in '/opt/2017-01-05_11-04-55'
innobackupex: back to original data directory '/var/lib/mysql'
innobackupex: Copying '/opt/2017-01-05_11-04-55/xtrabackup_info' to '/var/lib/mysql/xtrabackup_info'
innobackupex: Copying '/opt/2017-01-05_11-04-55/xtrabackup_binlog_pos_innodb' to '/var/lib/mysql/xtrabackup_binlog_pos_innodb'
innobackupex: Creating directory '/var/lib/mysql/mysql'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/innodb_table_stats.ibd' to '/var/lib/mysql/mysql/innodb_table_stats.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/innodb_index_stats.ibd' to '/var/lib/mysql/mysql/innodb_index_stats.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_relay_log_info.ibd' to '/var/lib/mysql/mysql/slave_relay_log_info.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_master_info.ibd' to '/var/lib/mysql/mysql/slave_master_info.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_worker_info.ibd' to '/var/lib/mysql/mysql/slave_worker_info.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/db.frm' to '/var/lib/mysql/mysql/db.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/db.MYI' to '/var/lib/mysql/mysql/db.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/db.MYD' to '/var/lib/mysql/mysql/db.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/user.frm' to '/var/lib/mysql/mysql/user.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/user.MYI' to '/var/lib/mysql/mysql/user.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/user.MYD' to '/var/lib/mysql/mysql/user.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/func.frm' to '/var/lib/mysql/mysql/func.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/func.MYI' to '/var/lib/mysql/mysql/func.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/func.MYD' to '/var/lib/mysql/mysql/func.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/plugin.frm' to '/var/lib/mysql/mysql/plugin.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/plugin.MYI' to '/var/lib/mysql/mysql/plugin.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/plugin.MYD' to '/var/lib/mysql/mysql/plugin.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/servers.frm' to '/var/lib/mysql/mysql/servers.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/servers.MYI' to '/var/lib/mysql/mysql/servers.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/servers.MYD' to '/var/lib/mysql/mysql/servers.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/tables_priv.frm' to '/var/lib/mysql/mysql/tables_priv.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/tables_priv.MYI' to '/var/lib/mysql/mysql/tables_priv.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/tables_priv.MYD' to '/var/lib/mysql/mysql/tables_priv.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/columns_priv.frm' to '/var/lib/mysql/mysql/columns_priv.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/columns_priv.MYI' to '/var/lib/mysql/mysql/columns_priv.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/columns_priv.MYD' to '/var/lib/mysql/mysql/columns_priv.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_topic.frm' to '/var/lib/mysql/mysql/help_topic.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_topic.MYI' to '/var/lib/mysql/mysql/help_topic.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_topic.MYD' to '/var/lib/mysql/mysql/help_topic.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_category.frm' to '/var/lib/mysql/mysql/help_category.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_category.MYI' to '/var/lib/mysql/mysql/help_category.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_category.MYD' to '/var/lib/mysql/mysql/help_category.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_relation.frm' to '/var/lib/mysql/mysql/help_relation.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_relation.MYI' to '/var/lib/mysql/mysql/help_relation.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_relation.MYD' to '/var/lib/mysql/mysql/help_relation.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_keyword.frm' to '/var/lib/mysql/mysql/help_keyword.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_keyword.MYI' to '/var/lib/mysql/mysql/help_keyword.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/help_keyword.MYD' to '/var/lib/mysql/mysql/help_keyword.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_name.frm' to '/var/lib/mysql/mysql/time_zone_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_name.MYI' to '/var/lib/mysql/mysql/time_zone_name.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_name.MYD' to '/var/lib/mysql/mysql/time_zone_name.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone.frm' to '/var/lib/mysql/mysql/time_zone.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone.MYI' to '/var/lib/mysql/mysql/time_zone.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone.MYD' to '/var/lib/mysql/mysql/time_zone.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition.frm' to '/var/lib/mysql/mysql/time_zone_transition.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition.MYI' to '/var/lib/mysql/mysql/time_zone_transition.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition.MYD' to '/var/lib/mysql/mysql/time_zone_transition.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition_type.frm' to '/var/lib/mysql/mysql/time_zone_transition_type.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition_type.MYI' to '/var/lib/mysql/mysql/time_zone_transition_type.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_transition_type.MYD' to '/var/lib/mysql/mysql/time_zone_transition_type.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_leap_second.frm' to '/var/lib/mysql/mysql/time_zone_leap_second.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_leap_second.MYI' to '/var/lib/mysql/mysql/time_zone_leap_second.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/time_zone_leap_second.MYD' to '/var/lib/mysql/mysql/time_zone_leap_second.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proc.frm' to '/var/lib/mysql/mysql/proc.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proc.MYI' to '/var/lib/mysql/mysql/proc.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proc.MYD' to '/var/lib/mysql/mysql/proc.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/procs_priv.frm' to '/var/lib/mysql/mysql/procs_priv.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/procs_priv.MYI' to '/var/lib/mysql/mysql/procs_priv.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/procs_priv.MYD' to '/var/lib/mysql/mysql/procs_priv.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/general_log.frm' to '/var/lib/mysql/mysql/general_log.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/general_log.CSM' to '/var/lib/mysql/mysql/general_log.CSM'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/general_log.CSV' to '/var/lib/mysql/mysql/general_log.CSV'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slow_log.frm' to '/var/lib/mysql/mysql/slow_log.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slow_log.CSM' to '/var/lib/mysql/mysql/slow_log.CSM'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slow_log.CSV' to '/var/lib/mysql/mysql/slow_log.CSV'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/event.frm' to '/var/lib/mysql/mysql/event.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/event.MYI' to '/var/lib/mysql/mysql/event.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/event.MYD' to '/var/lib/mysql/mysql/event.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/ndb_binlog_index.frm' to '/var/lib/mysql/mysql/ndb_binlog_index.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/ndb_binlog_index.MYI' to '/var/lib/mysql/mysql/ndb_binlog_index.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/ndb_binlog_index.MYD' to '/var/lib/mysql/mysql/ndb_binlog_index.MYD'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/innodb_table_stats.frm' to '/var/lib/mysql/mysql/innodb_table_stats.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/innodb_index_stats.frm' to '/var/lib/mysql/mysql/innodb_index_stats.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_relay_log_info.frm' to '/var/lib/mysql/mysql/slave_relay_log_info.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_master_info.frm' to '/var/lib/mysql/mysql/slave_master_info.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/slave_worker_info.frm' to '/var/lib/mysql/mysql/slave_worker_info.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proxies_priv.frm' to '/var/lib/mysql/mysql/proxies_priv.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proxies_priv.MYI' to '/var/lib/mysql/mysql/proxies_priv.MYI'
innobackupex: Copying '/opt/2017-01-05_11-04-55/mysql/proxies_priv.MYD' to '/var/lib/mysql/mysql/proxies_priv.MYD'
innobackupex: Creating directory '/var/lib/mysql/leco'
innobackupex: Copying '/opt/2017-01-05_11-04-55/leco/student.ibd' to '/var/lib/mysql/leco/student.ibd'
innobackupex: Copying '/opt/2017-01-05_11-04-55/leco/db.opt' to '/var/lib/mysql/leco/db.opt'
innobackupex: Copying '/opt/2017-01-05_11-04-55/leco/student.frm' to '/var/lib/mysql/leco/student.frm'
innobackupex: Creating directory '/var/lib/mysql/performance_schema'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/db.opt' to '/var/lib/mysql/performance_schema/db.opt'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/cond_instances.frm' to '/var/lib/mysql/performance_schema/cond_instances.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_current.frm' to '/var/lib/mysql/performance_schema/events_waits_current.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_history.frm' to '/var/lib/mysql/performance_schema/events_waits_history.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_history_long.frm' to '/var/lib/mysql/performance_schema/events_waits_history_long.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_by_instance.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_by_instance.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_by_host_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_by_host_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_by_user_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_by_user_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_by_account_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_by_account_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_by_thread_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_by_thread_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_waits_summary_global_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_waits_summary_global_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/file_instances.frm' to '/var/lib/mysql/performance_schema/file_instances.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/file_summary_by_event_name.frm' to '/var/lib/mysql/performance_schema/file_summary_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/file_summary_by_instance.frm' to '/var/lib/mysql/performance_schema/file_summary_by_instance.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/socket_instances.frm' to '/var/lib/mysql/performance_schema/socket_instances.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/socket_summary_by_instance.frm' to '/var/lib/mysql/performance_schema/socket_summary_by_instance.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/socket_summary_by_event_name.frm' to '/var/lib/mysql/performance_schema/socket_summary_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/host_cache.frm' to '/var/lib/mysql/performance_schema/host_cache.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/mutex_instances.frm' to '/var/lib/mysql/performance_schema/mutex_instances.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/objects_summary_global_by_type.frm' to '/var/lib/mysql/performance_schema/objects_summary_global_by_type.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/performance_timers.frm' to '/var/lib/mysql/performance_schema/performance_timers.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/rwlock_instances.frm' to '/var/lib/mysql/performance_schema/rwlock_instances.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/setup_actors.frm' to '/var/lib/mysql/performance_schema/setup_actors.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/setup_consumers.frm' to '/var/lib/mysql/performance_schema/setup_consumers.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/setup_instruments.frm' to '/var/lib/mysql/performance_schema/setup_instruments.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/setup_objects.frm' to '/var/lib/mysql/performance_schema/setup_objects.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/setup_timers.frm' to '/var/lib/mysql/performance_schema/setup_timers.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/table_io_waits_summary_by_index_usage.frm' to '/var/lib/mysql/performance_schema/table_io_waits_summary_by_index_usage.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/table_io_waits_summary_by_table.frm' to '/var/lib/mysql/performance_schema/table_io_waits_summary_by_table.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/table_lock_waits_summary_by_table.frm' to '/var/lib/mysql/performance_schema/table_lock_waits_summary_by_table.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/threads.frm' to '/var/lib/mysql/performance_schema/threads.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_current.frm' to '/var/lib/mysql/performance_schema/events_stages_current.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_history.frm' to '/var/lib/mysql/performance_schema/events_stages_history.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_history_long.frm' to '/var/lib/mysql/performance_schema/events_stages_history_long.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_summary_by_thread_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_stages_summary_by_thread_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_summary_by_host_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_stages_summary_by_host_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_summary_by_user_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_stages_summary_by_user_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_summary_by_account_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_stages_summary_by_account_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_stages_summary_global_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_stages_summary_global_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_current.frm' to '/var/lib/mysql/performance_schema/events_statements_current.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_history.frm' to '/var/lib/mysql/performance_schema/events_statements_history.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_history_long.frm' to '/var/lib/mysql/performance_schema/events_statements_history_long.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_by_thread_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_by_thread_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_by_host_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_by_host_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_by_user_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_by_user_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_by_account_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_by_account_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_global_by_event_name.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_global_by_event_name.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/hosts.frm' to '/var/lib/mysql/performance_schema/hosts.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/users.frm' to '/var/lib/mysql/performance_schema/users.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/accounts.frm' to '/var/lib/mysql/performance_schema/accounts.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/events_statements_summary_by_digest.frm' to '/var/lib/mysql/performance_schema/events_statements_summary_by_digest.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/session_connect_attrs.frm' to '/var/lib/mysql/performance_schema/session_connect_attrs.frm'
innobackupex: Copying '/opt/2017-01-05_11-04-55/performance_schema/session_account_connect_attrs.frm' to '/var/lib/mysql/performance_schema/session_account_connect_attrs.frm'

innobackupex: Starting to copy InnoDB system tablespace
innobackupex: in '/opt/2017-01-05_11-04-55'
innobackupex: back to original InnoDB data directory '/var/lib/mysql'
innobackupex: Copying '/opt/2017-01-05_11-04-55/ibdata1' to '/var/lib/mysql/ibdata1'

innobackupex: Starting to copy InnoDB undo tablespaces
innobackupex: in '/opt/2017-01-05_11-04-55'
innobackupex: back to '/var/lib/mysql'

innobackupex: Starting to copy InnoDB log files
innobackupex: in '/opt/2017-01-05_11-04-55'
innobackupex: back to original InnoDB log directory '/var/lib/mysql'
innobackupex: Copying '/opt/2017-01-05_11-04-55/ib_logfile1' to '/var/lib/mysql/ib_logfile1'
innobackupex: Copying '/opt/2017-01-05_11-04-55/ib_logfile0' to '/var/lib/mysql/ib_logfile0'
innobackupex: Finished copying back files.

170105 11:26:35 innobackupex: completed OK!
恢复成功。
[root@localhost mysql]# ll
total 110608
-rw-r--r--. 1 root root 12582912 Jan 5 11:26 ibdata1
-rw-r--r--. 1 root root 50331648 Jan 5 11:26 ib_logfile0
-rw-r--r--. 1 root root 50331648 Jan 5 11:26 ib_logfile1
drwxr-xr-x. 2 root root 55 Jan 5 11:26 leco
drwxr-xr-x. 2 root root 4096 Jan 5 11:26 mysql
drwxr-xr-x. 2 root root 4096 Jan 5 11:26 performance_schema
-rw-r--r--. 1 root root 22 Jan 5 11:26 xtrabackup_binlog_pos_innodb
-rw-r--r--. 1 root root 584 Jan 5 11:26 xtrabackup_info
#此时数据恢复到DATADIR目录后,还要确保全部数据文件属性为正确用户和组,如MySQL,不然启动不了。
[root@localhost mysql]# chown -R mysql.mysql .
[root@localhost mysql]# ll
total 110608
-rw-r--r--. 1 mysql mysql 12582912 Jan 5 11:26 ibdata1
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 11:26 ib_logfile0
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 11:26 ib_logfile1
drwxr-xr-x. 2 mysql mysql 55 Jan 5 11:26 leco
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 11:26 mysql
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 11:26 performance_schema
-rw-r--r--. 1 mysql mysql 22 Jan 5 11:26 xtrabackup_binlog_pos_innodb
-rw-r--r--. 1 mysql mysql 584 Jan 5 11:26 xtrabackup_info

[root@localhost mysql]# systemctl start mysql
[root@localhost mysql]# ll
total 110620
-rw-rw----. 1 mysql mysql 56 Jan 5 11:28 auto.cnf
-rw-r--r--. 1 mysql mysql 12582912 Jan 5 11:28 ibdata1
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 11:28 ib_logfile0
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 11:26 ib_logfile1
drwxr-xr-x. 2 mysql mysql 55 Jan 5 11:26 leco
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 11:26 mysql
-rw-rw----. 1 mysql mysql 120 Jan 5 11:28 mysql-bin.000001
-rw-rw----. 1 mysql mysql 19 Jan 5 11:28 mysql-bin.index
srwxrwxrwx. 1 mysql mysql 0 Jan 5 11:28 mysql.sock
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 11:26 performance_schema
-rw-r--r--. 1 mysql mysql 22 Jan 5 11:26 xtrabackup_binlog_pos_innodb
-rw-r--r--. 1 mysql mysql 584 Jan 5 11:26 xtrabackup_info
登录测试看看没有没恢复过来
[root@localhost mysql]# mysql -uroot -proot
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.35-log MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| leco |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.02 sec)

mysql> use leco;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_leco |
+----------------+
| student |
+----------------+
1 row in set (0.02 sec)

mysql> desc student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(4) | NO | | NULL | |
| name | char(20) | NO | | NULL | |
| age | tinyint(2) | NO | | 0 | |
| dept | varchar(16) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
mysql> select * from student;
+----+------+-----+------+
| id | name | age | dept |
+----+------+-----+------+
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
+----+------+-----+------+
4 rows in set (0.02 sec)
到如今全备已经测试OK

先插入几个数据,为增量备份作准备
mysql> insert into student(id,name,age) values(2,'beijing',100);
Query OK, 1 row affected (0.01 sec)

mysql> insert into student(id,name,age) values(2,'cmz',30);
Query OK, 1 row affected (0.01 sec)

mysql> select * from student;
+----+---------+-----+------+
| id | name | age | dept |
+----+---------+-----+------+
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
| 2 | beijing | 100 | NULL |
| 2 | cmz | 30 | NULL |
+----+---------+-----+------+
6 rows in set (0.00 sec)

2.2 基于全量备份的增量备份与恢复
2.2.1 增量备份
每一个InnoDB的页面都会包含一个LSN信息,每当相关数据发生改变,相关页面的LSN也会自动增加,这正是InnoDB表尅有进行增量备份的基础,即innobackupex经过上次彻底备份以后发生改变的页面来实现。在进行增量备份时,首先要进行一次全量备份,第一次增量备份是基于全备的,以后的增量备份是基于上一次的增量备份,以此类推。
要先实现第一次增量备份。能够实现下命令进行
基于全量备份的增量备份与恢复
作一次增量备份(基于当前最新的全量备份)
innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --incremental /opt/ --incremental-basedir=/opt/2017-01-05_11-04-55/

  1. 准备基于全量
    innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --apply-log --redo-only /opt/2017-01-05_11-04-55/
  2. 准备基于增量
    innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --apply-log --redo-only /opt/2017-01-05_11-04-55/ --incremental-dir=/opt/2017-01-05_11-44-22/
  3. 恢复
    innobackupex --copy-back --defaults-file=/etc/my.cnf /opt/2017-01-05_11-04-55/
    解释:
    1.2017-01-05_11-04-55指的是彻底备份所在的目录。
    2.2017-01-05_11-44-22指定是第一次基于2017-01-05_11-04-55增量备份的目录,其余相似以此类推,即若是有屡次增量备份。每一次都要执行如上操做。

[root@localhost mysql]# innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --incremental /opt/ --incremental-basedir=/opt/2017-01-05_11-04-55/

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 11:44:22 innobackupex: Executing a version check against the server...
170105 11:44:22 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 11:44:22 innobackupex: Connected to MySQL server
170105 11:44:22 innobackupex: Done.
170105 11:44:22 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 11:44:22 innobackupex: Connected to MySQL server
170105 11:44:22 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".

innobackupex: Using server version 5.6.35-log

innobackupex: Created backup directory /opt/2017-01-05_11-44-22

170105 11:44:22 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/etc/my.cnf" --defaults-group="mysqld" --backup --suspend-at-end --target-dir=/opt/2017-01-05_11-44-22 --innodb_log_file_size="50331648" --innodb_data_file_path="ibdata1:12M:autoextend" --tmpdir=/tmp --extra-lsndir='/tmp' --incremental-basedir='/opt/2017-01-05_11-04-55/'
innobackupex: Waiting for ibbackup (pid=27861) to suspend
innobackupex: Suspend file '/opt/2017-01-05_11-44-22/xtrabackup_suspended_2'

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
incremental backup from 1666902 is enabled.
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /var/lib/mysql
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648

log scanned up to (1669207)
xtrabackup: Generating a list of tablespaces
xtrabackup: using the full scan for incremental backup
[01] Copying ./ibdata1 to /opt/2017-01-05_11-44-22/ibdata1.delta
[01] ...done
[01] Copying ./mysql/innodb_table_stats.ibd to /opt/2017-01-05_11-44-22/mysql/innodb_table_stats.ibd.delta
[01] ...done
[01] Copying ./mysql/innodb_index_stats.ibd to /opt/2017-01-05_11-44-22/mysql/innodb_index_stats.ibd.delta
[01] ...done
[01] Copying ./mysql/slave_relay_log_info.ibd to /opt/2017-01-05_11-44-22/mysql/slave_relay_log_info.ibd.delta
[01] ...done
[01] Copying ./mysql/slave_master_info.ibd to /opt/2017-01-05_11-44-22/mysql/slave_master_info.ibd.delta
[01] ...done
[01] Copying ./mysql/slave_worker_info.ibd to /opt/2017-01-05_11-44-22/mysql/slave_worker_info.ibd.delta
[01] ...done
[01] Copying ./leco/student.ibd to /opt/2017-01-05_11-44-22/leco/student.ibd.delta
[01] ...done
log scanned up to (1669207)
xtrabackup: Creating suspend file '/opt/2017-01-05_11-44-22/xtrabackup_suspended_2' with pid '27861'

170105 11:44:24 innobackupex: Continuing after ibbackup has suspended
170105 11:44:24 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG TABLES...

log scanned up to (1669207)
170105 11:44:24 innobackupex: Executing FLUSH TABLES WITH READ LOCK...
170105 11:44:24 innobackupex: All tables locked and flushed to disk

170105 11:44:24 innobackupex: Starting to backup non-InnoDB tables and files
innobackupex: in subdirectories of '/var/lib/mysql/'
innobackupex: Backing up files '/var/lib/mysql//mysql/.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (74 files)
innobackupex: Backing up file '/var/lib/mysql//leco/db.opt'
innobackupex: Backing up file '/var/lib/mysql//leco/student.frm'
innobackupex: Backing up files '/var/lib/mysql//performance_schema/
.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (53 files)
170105 11:44:25 innobackupex: Finished backing up non-InnoDB tables and files

170105 11:44:25 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG ENGINE LOGS...
170105 11:44:25 innobackupex: Waiting for log copying to finish

xtrabackup: The latest check point (for incremental): '1669207'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (1669207)

xtrabackup: Creating suspend file '/opt/2017-01-05_11-44-22/xtrabackup_log_copied' with pid '27861'
xtrabackup: Transaction log of lsn (1669207) to (1669207) was copied.
170105 11:44:26 innobackupex: All tables unlocked

innobackupex: Backup created in directory '/opt/2017-01-05_11-44-22'
innobackupex: MySQL binlog position: filename 'mysql-bin.000001', position 595
170105 11:44:26 innobackupex: Connection to database server closed
170105 11:44:26 innobackupex: completed OK!

[root@localhost 2017-01-05_11-04-55]# cat xtrabackup_checkpoints #全量备份点
backup_type = full-prepared
from_lsn = 0
to_lsn = 1666902
last_lsn = 1666902
compact = 0

[root@localhost 2017-01-05_11-04-55]# cd ../2017-01-05_11-44-22/
[root@localhost 2017-01-05_11-44-22]# ls
backup-my.cnf ibdata1.meta mysql xtrabackup_binlog_info xtrabackup_info
ibdata1.delta leco performance_schema xtrabackup_checkpoints xtrabackup_logfile
[root@localhost 2017-01-05_11-44-22]# cat xtrabackup_checkpoints #增量备份点
backup_type = incremental
from_lsn = 1666902
to_lsn = 1669207
last_lsn = 1669207
compact = 0
其中BASEDIR指的是彻底备份所在的目录,此命令结束后,innobackupex命令会在/backup目录中建立一个新的以时间命名的目录以存放全部的增量备份数据,另外在执行过程增量备份只有在进行一次增量备份时,其中--incremental-basedir
应该指向上一次的增量备份所在的目录,须要注意的是增量备份仅仅用于InnoDB或者XtraDB表,对于MyISAM表而言,执行增量备份时候其实进程的彻底备份。

2.2.2 增量恢复
准备(prepare)增量备份与总体彻底备份有一些不一样,尤为要注意的是,
1.须要在每一个备份(包括彻底和各个增量备份)上,将已经提交的事物进行,重放。重放以后,全部的备份数据将合并到彻底备份上。
2.基于全部的备份将未提交的事物进程回滚

[root@localhost ~]# systemctl stop mysql
[root@localhost ~]# cd /var/lib/mysql/
leco/ mysql/ performance_schema/
[root@localhost ~]# cd /var/lib/mysql/
[root@localhost mysql]# ls
auto.cnf ib_logfile0 leco mysql-bin.000001 performance_schema xtrabackup_binlog_pos_innodb
ibdata1 ib_logfile1 mysql mysql-bin.index select xtrabackup_info
[root@localhost mysql]# rm -rf *

指定全量备份
[root@localhost mysql]# innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --apply-log --redo-only /opt/2017-01-05_11-04-55/

指定增量备份
[root@localhost mysql]# innobackupex --user=root --password=root --defaults-file=/etc/my.cnf --apply-log --redo-only /opt/2017-01-05_11-04-55/ --incremental-dir=/opt/2017-01-05_11-44-22/

恢复
[root@localhost mysql]# innobackupex --copy-back --defaults-file=/etc/my.cnf /opt/2017-01-05_11-04-55/
解释:

  1. 2017-01-05_11-04-55/ 是一次全量备份
  2. 2017-01-05_11-44-22 是一次基于2017-01-05_11-04-55的增量备份
  3. 恢复的时候要指定那个全量的目录路径。

[root@localhost mysql]# ls
ibdata1 ib_logfile0 ib_logfile1 leco mysql performance_schema xtrabackup_info
[root@localhost mysql]# chown -R mysql.mysql * #此时必定要先受权在启动mysql
[root@localhost mysql]# ll
total 110604
-rw-r--r--. 1 mysql mysql 12582912 Jan 5 13:24 ibdata1
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 13:24 ib_logfile0
-rw-r--r--. 1 mysql mysql 50331648 Jan 5 13:24 ib_logfile1
drwxr-xr-x. 2 mysql mysql 55 Jan 5 13:24 leco
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 13:24 mysql
-rw-rw----. 1 mysql mysql 0 Jan 5 13:26 mysql-bin.index
drwxr-xr-x. 2 mysql mysql 4096 Jan 5 13:24 performance_schema
-rw-r--r--. 1 mysql mysql 652 Jan 5 13:24 xtrabackup_info
[root@localhost mysql]# systemctl start mysql
[root@localhost mysql]# ps aux|grep mysql
mysql 33422 2.0 0.1 113248 1604 ? Ss 13:26 0:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
root 33423 0.0 0.1 113116 1456 ? Ss 13:26 0:00 /bin/bash /usr/bin/mysql-systemd-start post
mysql 33599 21.0 11.1 475116 111352 ? Sl 13:26 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysqlmysql.sock
root 33612 0.0 0.0 112648 952 pts/3 S+ 13:26 0:00 grep --color=auto mysql
[root@localhost mysql]# mysql -uroot -proot
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.35-log MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| leco |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.03 sec)

mysql> use leco;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_leco |
+----------------+
| student |
+----------------+
1 row in set (0.00 sec)

mysql> select * from student;
+----+---------+-----+------+
| id | name | age | dept |
+----+---------+-----+------+
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
| 1 | good | 15 | NULL |
| 2 | hehe | 18 | NULL |
| 2 | beijing | 100 | NULL |
| 2 | cmz | 30 | NULL |
+----+---------+-----+------+
6 rows in set (0.00 sec)
到增量备份已经OK。
2.2.3 屡次增量备份
2.2.4 屡次增量恢复

2.3 单库备份与恢复
[root@localhost opt]# innobackupex --user=root -password=root --defaults-file=/etc/my.cnf --database=leco /tmp/
解释:
1.要加参数 --database
2.要指定库名字
InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 13:58:45 innobackupex: Executing a version check against the server...
170105 13:58:45 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 13:58:45 innobackupex: Connected to MySQL server
170105 13:58:45 innobackupex: Done.
170105 13:58:45 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 13:58:45 innobackupex: Connected to MySQL server
170105 13:58:45 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".

innobackupex: Using server version 5.6.35-log

innobackupex: Created backup directory /tmp/2017-01-05_13-58-45

170105 13:58:45 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/etc/my.cnf" --defaults-group="mysqld" --backup --suspend-at-end --target-dir=/tmp/2017-01-05_13-58-45 --innodb_log_file_size="50331648" --innodb_data_file_path="ibdata1:12M:autoextend" --tmpdir=/tmp --extra-lsndir='/tmp' --databases='leco'
innobackupex: Waiting for ibbackup (pid=35053) to suspend
innobackupex: Suspend file '/tmp/2017-01-05_13-58-45/xtrabackup_suspended_2'

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /var/lib/mysql
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648

log scanned up to (1667104)
xtrabackup: Generating a list of tablespaces
[01] Copying ./ibdata1 to /tmp/2017-01-05_13-58-45/ibdata1
[01] ...done
[01] Copying ./leco/student.ibd to /tmp/2017-01-05_13-58-45/leco/student.ibd
[01] ...done
log scanned up to (1667104)
xtrabackup: Creating suspend file '/tmp/2017-01-05_13-58-45/xtrabackup_suspended_2' with pid '35053'

170105 13:58:47 innobackupex: Continuing after ibbackup has suspended
170105 13:58:47 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG TABLES...
170105 13:58:47 innobackupex: Executing FLUSH TABLES WITH READ LOCK...
170105 13:58:47 innobackupex: All tables locked and flushed to disk

170105 13:58:47 innobackupex: Starting to backup non-InnoDB tables and files
innobackupex: in subdirectories of '/var/lib/mysql/'
innobackupex: Backing up file '/var/lib/mysql//leco/db.opt'

log scanned up to (1667104)
innobackupex: Backing up file '/var/lib/mysql//leco/student.frm'
170105 13:58:47 innobackupex: Finished backing up non-InnoDB tables and files

170105 13:58:47 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG ENGINE LOGS...
170105 13:58:47 innobackupex: Waiting for log copying to finish

xtrabackup: The latest check point (for incremental): '1667104'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (1667104)

xtrabackup: Creating suspend file '/tmp/2017-01-05_13-58-45/xtrabackup_log_copied' with pid '35053'
xtrabackup: Transaction log of lsn (1667104) to (1667104) was copied.
170105 13:58:48 innobackupex: All tables unlocked

innobackupex: Backup created in directory '/tmp/2017-01-05_13-58-45'
innobackupex: MySQL binlog position: filename 'mysql-bin.000001', position 120
170105 13:58:48 innobackupex: Connection to database server closed
170105 13:58:48 innobackupex: completed OK!
[root@localhost opt]# ll /tmp/2017-01-05_13-58-45
total 12308
-rw-r--r--. 1 root root 295 Jan 5 13:58 backup-my.cnf
-rw-r-----. 1 root root 12582912 Jan 5 13:58 ibdata1
drwx------. 2 root root 55 Jan 5 13:58 leco
-rw-r--r--. 1 root root 21 Jan 5 13:58 xtrabackup_binlog_info
-rw-r-----. 1 root root 89 Jan 5 13:58 xtrabackup_checkpoints
-rw-r--r--. 1 root root 600 Jan 5 13:58 xtrabackup_info
-rw-r-----. 1 root root 2560 Jan 5 13:58 xtrabackup_logfile

2.4 备份文件归档压缩
2.4.1 压缩
[root@localhost opt]# mkdir /tmp/db
[root@localhost opt]# innobackupex --user=root -password=root --defaults-file=/etc/my.cnf --stream=tar /tmp/db | gzip >/tmp/db/date +%F.tar.gz

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

This software is published under
the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

170105 14:05:59 innobackupex: Executing a version check against the server...
170105 14:05:59 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 14:05:59 innobackupex: Connected to MySQL server
170105 14:05:59 innobackupex: Done.
170105 14:05:59 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/etc/my.cnf;mysql_read_default_group=xtrabackup' as 'root' (using password: YES).
170105 14:05:59 innobackupex: Connected to MySQL server
170105 14:05:59 innobackupex: Starting the backup operation

IMPORTANT: Please check that the backup run completes successfully.
At the end of a successful backup run innobackupex
prints "completed OK!".

innobackupex: Using server version 5.6.35-log

innobackupex: Created backup directory /tmp/db

170105 14:05:59 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/etc/my.cnf" --defaults-group="mysqld" --backup --suspend-at-end --target-dir=/tmp --innodb_log_file_size="50331648" --innodb_data_file_path="ibdata1:12M:autoextend" --tmpdir=/tmp --extra-lsndir='/tmp' --stream=tar
innobackupex: Waiting for ibbackup (pid=35685) to suspend
innobackupex: Suspend file '/tmp/xtrabackup_suspended_2'

xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)
xtrabackup: uses posix_fadvise().
xtrabackup: cd to /var/lib/mysql
xtrabackup: open files limit requested 0, set to 1024
xtrabackup: using the following InnoDB configuration:
xtrabackup: innodb_data_home_dir = ./
xtrabackup: innodb_data_file_path = ibdata1:12M:autoextend
xtrabackup: innodb_log_group_home_dir = ./
xtrabackup: innodb_log_files_in_group = 2
xtrabackup: innodb_log_file_size = 50331648

log scanned up to (1667104)
xtrabackup: Generating a list of tablespaces
[01] Streaming ./ibdata1
[01] ...done
[01] Streaming ./mysql/innodb_table_stats.ibd
[01] ...done
[01] Streaming ./mysql/innodb_index_stats.ibd
[01] ...done
[01] Streaming ./mysql/slave_relay_log_info.ibd
[01] ...done
[01] Streaming ./mysql/slave_master_info.ibd
[01] ...done
[01] Streaming ./mysql/slave_worker_info.ibd
[01] ...done
[01] Streaming ./leco/student.ibd
[01] ...done
log scanned up to (1667104)
xtrabackup: Creating suspend file '/tmp/xtrabackup_suspended_2' with pid '35685'

170105 14:06:01 innobackupex: Continuing after ibbackup has suspended
170105 14:06:01 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG TABLES...
170105 14:06:01 innobackupex: Executing FLUSH TABLES WITH READ LOCK...
170105 14:06:01 innobackupex: All tables locked and flushed to disk

170105 14:06:01 innobackupex: Starting to backup non-InnoDB tables and files
innobackupex: in subdirectories of '/var/lib/mysql/'
innobackupex: Backing up files '/var/lib/mysql//mysql/*.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (74 files)

log scanned up to (1667104)
innobackupex: Backing up file '/var/lib/mysql//leco/db.opt'
innobackupex: Backing up file '/var/lib/mysql//leco/student.frm'
innobackupex: Backing up files '/var/lib/mysql//performance_schema/*.{frm,isl,MYD,MYI,MAD,MAI,MRG,TRG,TRN,ARM,ARZ,CSM,CSV,opt,par}' (53 files)
170105 14:06:02 innobackupex: Finished backing up non-InnoDB tables and files

170105 14:06:02 innobackupex: Executing FLUSH NO_WRITE_TO_BINLOG ENGINE LOGS...
170105 14:06:02 innobackupex: Waiting for log copying to finish

xtrabackup: The latest check point (for incremental): '1667104'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (1667104)

xtrabackup: Creating suspend file '/tmp/xtrabackup_log_copied' with pid '35685'
xtrabackup: Transaction log of lsn (1667104) to (1667104) was copied.
170105 14:06:03 innobackupex: All tables unlocked

innobackupex: Backup created in directory '/tmp/db'
innobackupex: MySQL binlog position: filename 'mysql-bin.000001', position 120
170105 14:06:03 innobackupex: Connection to database server closed
innobackupex: You must use -i (--ignore-zeros) option for extraction of the tar stream.
170105 14:06:03 innobackupex: completed OK!
[root@localhost opt]# ll /tmp/db/2017-01-05.tar.gz
-rw-r--r--. 1 root root 285805 Jan 5 14:06 /tmp/db/2017-01-05.tar.gz
2.4.2 解压
[root@localhost db]# tar -izxvf date +%F.tar.gz#注意解压的方式不一样,不能直接像平时解压文件那样。./backup-my.cnfibdata1mysql/innodb_table_stats.ibdmysql/innodb_index_stats.ibdmysql/slave_relay_log_info.ibdmysql/slave_master_info.ibdmysql/slave_worker_info.ibdleco/student.ibdmysql/db.frmmysql/db.MYImysql/db.MYDmysql/user.frmmysql/user.MYImysql/user.MYDmysql/func.frmmysql/func.MYImysql/func.MYDmysql/plugin.frmmysql/plugin.MYImysql/plugin.MYDmysql/servers.frmmysql/servers.MYImysql/servers.MYDmysql/tables_priv.frmmysql/tables_priv.MYImysql/tables_priv.MYDmysql/columns_priv.frmmysql/columns_priv.MYImysql/columns_priv.MYDmysql/help_topic.frmmysql/help_topic.MYImysql/help_topic.MYDmysql/help_category.frmmysql/help_category.MYImysql/help_category.MYDmysql/help_relation.frmmysql/help_relation.MYImysql/help_relation.MYDmysql/help_keyword.frmmysql/help_keyword.MYImysql/help_keyword.MYDmysql/time_zone_name.frmmysql/time_zone_name.MYImysql/time_zone_name.MYDmysql/time_zone.frmmysql/time_zone.MYImysql/time_zone.MYDmysql/time_zone_transition.frmmysql/time_zone_transition.MYImysql/time_zone_transition.MYDmysql/time_zone_transition_type.frmmysql/time_zone_transition_type.MYImysql/time_zone_transition_type.MYDmysql/time_zone_leap_second.frmmysql/time_zone_leap_second.MYImysql/time_zone_leap_second.MYDmysql/proc.frmmysql/proc.MYImysql/proc.MYDmysql/procs_priv.frmmysql/procs_priv.MYImysql/procs_priv.MYDmysql/general_log.frmmysql/general_log.CSMmysql/general_log.CSVmysql/slow_log.frmmysql/slow_log.CSMmysql/slow_log.CSVmysql/event.frmmysql/event.MYImysql/event.MYDmysql/ndb_binlog_index.frmmysql/ndb_binlog_index.MYImysql/ndb_binlog_index.MYDmysql/innodb_table_stats.frmmysql/innodb_index_stats.frmmysql/slave_relay_log_info.frmmysql/slave_master_info.frmmysql/slave_worker_info.frmmysql/proxies_priv.frmmysql/proxies_priv.MYImysql/proxies_priv.MYDleco/db.optleco/student.frmperformance_schema/db.optperformance_schema/cond_instances.frmperformance_schema/events_waits_current.frmperformance_schema/events_waits_history.frmperformance_schema/events_waits_history_long.frmperformance_schema/events_waits_summary_by_instance.frmperformance_schema/events_waits_summary_by_host_by_event_name.frmperformance_schema/events_waits_summary_by_user_by_event_name.frmperformance_schema/events_waits_summary_by_account_by_event_name.frmperformance_schema/events_waits_summary_by_thread_by_event_name.frmperformance_schema/events_waits_summary_global_by_event_name.frmperformance_schema/file_instances.frmperformance_schema/file_summary_by_event_name.frmperformance_schema/file_summary_by_instance.frmperformance_schema/socket_instances.frmperformance_schema/socket_summary_by_instance.frmperformance_schema/socket_summary_by_event_name.frmperformance_schema/host_cache.frmperformance_schema/mutex_instances.frmperformance_schema/objects_summary_global_by_type.frmperformance_schema/performance_timers.frmperformance_schema/rwlock_instances.frmperformance_schema/setup_actors.frmperformance_schema/setup_consumers.frmperformance_schema/setup_instruments.frmperformance_schema/setup_objects.frmperformance_schema/setup_timers.frmperformance_schema/table_io_waits_summary_by_index_usage.frmperformance_schema/table_io_waits_summary_by_table.frmperformance_schema/table_lock_waits_summary_by_table.frmperformance_schema/threads.frmperformance_schema/events_stages_current.frmperformance_schema/events_stages_history.frmperformance_schema/events_stages_history_long.frmperformance_schema/events_stages_summary_by_thread_by_event_name.frmperformance_schema/events_stages_summary_by_host_by_event_name.frmperformance_schema/events_stages_summary_by_user_by_event_name.frmperformance_schema/events_stages_summary_by_account_by_event_name.frmperformance_schema/events_stages_summary_global_by_event_name.frmperformance_schema/events_statements_current.frmperformance_schema/events_statements_history.frmperformance_schema/events_statements_history_long.frmperformance_schema/events_statements_summary_by_thread_by_event_name.frmperformance_schema/events_statements_summary_by_host_by_event_name.frmperformance_schema/events_statements_summary_by_user_by_event_name.frmperformance_schema/events_statements_summary_by_account_by_event_name.frmperformance_schema/events_statements_summary_global_by_event_name.frmperformance_schema/hosts.frmperformance_schema/users.frmperformance_schema/accounts.frmperformance_schema/events_statements_summary_by_digest.frmperformance_schema/session_connect_attrs.frmperformance_schema/session_account_connect_attrs.frm./xtrabackup_binlog_infoxtrabackup_logfilextrabackup_checkpoints./xtrabackup_info[root@localhost db]# ls2017-01-05.tar.gz ibdata1 mysql xtrabackup_binlog_info xtrabackup_infobackup-my.cnf leco performance_schema xtrabackup_checkpoints xtrabackup_logfile[root@localhost db]#

相关文章
相关标签/搜索