使用xtrabackup(innobackupex)实现MySQL的热备

mysql 的热备
http://www.178linux.com/10139
http://www.linuxidc.com/Linux/2014-04/99671.htm
http://634871.blog.51cto.com/624871/1351049
http://www.cnblogs.com/galengao/p/5755835.html
http://heylinux.com/archives/3777.html

 

遇到问题,解决链接

http://blog.csdn.net/sqlserverdiscovery/article/details/52856949
这里我们使用XtraBackup来实现MySQL的热备
XtraBackup取代innodbbackup的工具并且XtraBackup能够完全兼容innodb存储引擎,并对innodb存储引擎实现完全的物理层的热备。
但是缺憾就是对MyISAM表格只能做温备,而且不支持增量备份
XtraBackup更多高级特性通常只能在innodb存储引擎上实现,而且高级特性还都依赖于mysql数据库对innodb引擎实现了单独表空间,否则没办法实现单表或单库导出

所以这里我们先检查一下MySQL中的表是不是使用了每个表都单独的使用表空间,如果不是的话,将其修改成每表单独表空间

mysql> show global variables like '%innodb_file_p%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | ON    |
+-----------------------+-------+
1 row in set (0.00 sec)

如果这里是OFF的话,我们就要开启这个功能
将来一旦要用到xtrabackup或各种高级功能的话建议刚安装mysql的时候直接将默认配置去写进配置文件,中途再更改的话会非常麻烦
加入说我们现在是OFF状态的话,我们需要先停数据库
然后使用mysqldump 全备份
mysqldump -uroot --lock-all-tables --all-databases --master-data=2 --events> /bak/all.sql

编辑配置文件加入以下参数
vim /etc/my.cnf
添加如下
innodb_file_per_table= 1

而后删除数据文件并重新初始化
[root@test2 data]#pwd
/mydata/data
[root@test2 data]# rm -fr *

重新初始化:
[root@test mysql]# scripts/mysql_install_db --user=mysql--datadir=/mydata/data/ --basedir=/usr/local/mysql/

重启数据库
/etc/init.d/mysqld start
mysql> showglobal variables like '%innodb_file_per%';

然后就是恢复数据了
mysql> source /bak/all.sql

 

现在,绝大多数使用MySQL的场景中,都用到了Master-Slave这样的架构。相对于mysqldump而言,使用innobackupex备份有以下好处:
1. 以数据文件为备份对象,文件级别备份,速度快,尤其适合需要对所有数据进行备份的场景;
2. 热备份,不会对现有的数据库访问造成影响;
3. 记录binlog以及replication相关信息,在创建和恢复Slave时非常有用;
4. 支持对备份后的数据进行同步并行压缩,有效节省磁盘空间;

目前,在我们的线上环境中,数据库的大小,在没有压缩之前为500G左右,压缩之后的大小为90G左右。
而在风哥的环境中,数据库的大小已经超过了1T,以下是风哥的几点补充:
1.用innobackupex可以做到不停业务在线备份,前提是对innodb引擎,对myisam也会锁表;
2.在备份过程会导致IO很高,建议在一台slave上做备份(一般用一台slave只做备份用),不建议在主上备份;
3.innobackupex可以用增量与全量备份方式配合;

现在来说一下全备份
# 指定备份某一数据库
[root@client103 ~]#innobackupex --defaults-file=/data/usr/local/mysql56/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/ > /data/bak_dir/mysql/3306/innoback.log 2>&1
# 备份所有的数据库
[root@client103 backup]# innobackupex --defaults-file=/data/usr/local/mysql56/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/ > /data/bak_dir/mysql/3306/innoback.log 2>&1
# 注:还原时,需要清空数据目录,所以建议备份的话,执行全库备份
# 备份完成后,应用日志,是备份的数据保持一致[ /data/bak_dir/mysql/3306/full/为备份存放的位置]
innobackupex --apply-log --defaults-file=/data/usr/local/mysql56/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/2017-02-15_13-58-26

# 利用刚才的备份进行数据库还原


这里我们模仿数据丢失,然后我们关闭数据库,执行恢复操作
truncate table user_admin;
service mysql_3306 stop
cd /data/dbdata/3306
mv data data_bak
mkdir data

innobackupex --copy-back --defaults-file=/data/usr/local/mysql56/my.cnf --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/

我在做copy-back这一步总是报错,报错内容为:Original data directory '.' is not empty
网上查找资料说要指定数据文件的目录,所以这里我添加一个--datadir,指定一下路径
innobackupex --copy-back --defaults-file=/data/usr/local/mysql56/my.cnf --socket=/data/dbdata/3306/mysql.sock --datadir=/data/dbdata/3306/data  /data/bak_dir/mysql/3306/full/2017-02-15_14-55-03/

chown mysql.mysql data -R

/etc/init.d/mysql start

我们再来看看数据都恢复了

 

但是要是在生产环境下的话,建议使用在从库上进行备份。但是我们还要注意主库上的二进制日志(可以给这个也做一下切割备份)

现在我来做一下主从,首先我来在从库上装一下MySQL

主从的安装文章参考:http://www.cnblogs.com/smail-bao/p/6405313.html

 现在我们来在从库上操作一下备份

 

创建全备和增备的目录
[root@bao-work-2 ~]# mkdir -p  /data/bak_dir/mysql/3306/{full,incre}

现在分为常规的备份方式和压缩的备份方式
常规的备份方式为:
innobackupex --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --slave-info --safe-slave-backup /data/bak_dir/mysql/3306/full/  > /data/bak_dir/mysql/3306/full/full.log 2>&1

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock  --datadir=/data/dbdata/3306/data /data/bak_dir/mysql/3306/full/2017-02-16_14-49-26

/etc/init.d/mysql stop (要是不先执行这一步的话,等会再重启的时候会报错,关mysql都关不掉)

mv data data_bak
mkdir data

innobackupex --copy-back --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock  --datadir=/data/dbdata/3306/data /data/bak_dir/mysql/3306/full/2017-02-16_14-49-26

chown mysql.mysql data -R
/etc/init.d/mysql_3306 start
启动成功

现在我们回到上面的问题
加入我们现在备份成功,遇到一个问题就是一个人把你的data目录给删除了
但是你通过 ps -ef | grep mysql 发现还是有进程
你现在要做的就是通过备份恢复数据
mkdir data
innobackupex --copy-back --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock  --datadir=/data/dbdata/3306/data /data/bak_dir/mysql/3306/full/2017-02-16_14-49-26
chown mysql.mysql data -R
[root@bao-work-2 3306]# /etc/init.d/mysql_3306 restart
MySQL server PID file could not be found!                  [失败]
Starting MySQL...The server quit without updating PID file [失败]/dbdata/3306/data/bao-work-2.pid).
我们发现重启的时候报错了

这个时候就需要我们手动的去kill 掉MySQL的进程了
for i in $(ps -ef | grep mysql | grep -v 'grep' |  awk '{print $2}');do kill -9 $i;done
然后我们去启动数据库
/etc/init.d/mysql_3306 start

这样我们就看到MySQL数据回来了

但是还有一点要注意的是,我们要去恢复主从同步。
我们要看一下从库上面的备份文件下的xtrabackup_slave_info的文件内容
[root@bao-work-2 2017-02-16_14-49-26]# cat xtrabackup_info
uuid = 1bbe50b3-f414-11e6-b6ed-000c29831a2e
name =
tool_name = innobackupex
tool_command = --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=... --port=3306 --socket=/data/dbdata/3306/mysql.sock --slave-info --safe-slave-backup /data/bak_dir/mysql/3306/full/
tool_version = 2.3.3
ibbackup_version = 2.3.3
server_version = 5.6.23-log
start_time = 2017-02-16 14:49:26
end_time = 2017-02-16 14:49:48
lock_time = 0
binlog_pos = filename 'mysql-bin.000006', position '120'
innodb_from_lsn = 0
innodb_to_lsn = 10005906
partial = N
incremental = N
format = file
compact = N
compressed = N
encrypted = N

然后我们进入MySQL执行下面的操作
change master to
master_host='10.230.200.19',
master_port=3306,
master_user='repl',
master_password='kongzhong789',
master_log_file='mysql-bin.000006',
master_log_pos=120;


start slave;
show slave status\G;

 

接下来我们要看的就是从库MySQL的增量备份和恢复

 指定MySQL备份方案
每天一次的完整备份+两次增量备份
在每次备份的时候都会产生日志,反正也不大可以保存下来
1.完整备份

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --no-lock --slave-info --safe-slave-backup --compress --compress-threads=8 /data/bak_dir/mysql/3306/full/  > /data/bak_dir/mysql/3306/full.log 2>&1

 
2.第一次增量备份

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --no-lock --slave-info --safe-slave-backup --compress --compress-threads=8 --incremental /data/bak_dir/mysql/3306/incre --incremental-basedir=/data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 >/data/bak_dir/mysql/3306/incre1.log 2>&1

 
3.第二次增量备份

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --no-lock --slave-info --safe-slave-backup --compress --compress-threads=8 --incremental /data/bak_dir/mysql/3306/incre --incremental-basedir=/data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32 >/data/bak_dir/mysql/3306/incre2.log 2>&1

 
恢复
取回完整备份

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

报错:

在执行上面shell的时候遇到一个错误
sh: qpress: command not found

解决办法
cd /data/tools
    wget http://www.quicklz.com/qpress-11-linux-x64.tar
    tar xvf qpress-11-linux-x64.tar
    cp qpress /usr/bin
然后再执行上面的操作

 
取回完整备份

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42


下面为执行后输出内容

170216 16:39:11 innobackupex: Starting the decrypt and decompress operation

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

innobackupex version 2.3.3 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 525ca7d)
170216 16:39:11 [02] decompressing ./xtrabackup_slave_info.qp
170216 16:39:11 [03] decompressing ./backup-my.cnf.qp
170216 16:39:11 [04] decompressing ./ibdata1.qp
170216 16:39:11 [01] decompressing ./mysql/t_admin_role_priv.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_pre_auth_trade.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_role_fun.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/uc_t_role.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_history_yield.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/act_t_activity.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/servers.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_console_menu.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_withdraw_deposit_order.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_xmas_count.frm.qp
170216 16:39:11 [03] decompressing ./mysql/crm_person_info.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_admin_role.frm.qp
170216 16:39:11 [03] decompressing ./mysql/help_relation.MYI.qp
170216 16:39:11 [01] decompressing ./mysql/slave_worker_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/servers.MYD.qp
170216 16:39:11 [02] decompressing ./mysql/help_relation.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/t_licai_project_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_third_interface_log.frm.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_role.frm.qp
170216 16:39:11 [03] decompressing ./mysql/cd_t_withdraw.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_city.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/t_withdraw_deposit_order.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/db.frm.qp
170216 16:39:11 [02] decompressing ./mysql/ndb_binlog_index.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_area.frm.qp
170216 16:39:11 [02] decompressing ./mysql/uc_t_department.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_city.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_oauth_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_province.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/help_topic.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/t_my_hongbao_info.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_question.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_account_detail.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_awards_xmas.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_templet_field.frm.qp
170216 16:39:11 [01] decompressing ./mysql/tables_priv.MYD.qp
170216 16:39:11 [03] decompressing ./mysql/t_admin.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_licai_project_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_grant_record.frm.qp
170216 16:39:11 [01] decompressing ./mysql/plugin.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/uc_t_role_authority.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_company_user.frm.qp
170216 16:39:11 [01] decompressing ./mysql/user.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/con_t_credit_pro.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/time_zone_name.frm.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_staff.frm.qp
170216 16:39:11 [02] decompressing ./mysql/act_t_lottery_coupon.frm.qp
170216 16:39:11 [01] decompressing ./mysql/crm_t_banks.frm.qp
170216 16:39:11 [03] decompressing ./mysql/time_zone_leap_second.frm.qp
170216 16:39:11 [02] decompressing ./mysql/uc_t_staff.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/procs_priv.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_borrower_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/cd_t_credit_info.frm.qp
170216 16:39:11 [03] decompressing ./mysql/servers.MYI.qp
170216 16:39:11 [01] decompressing ./mysql/t_operation_log.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/act_t_awards_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/tables_priv.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_project_tag.frm.qp
170216 16:39:11 [02] decompressing ./mysql/crm_t_car_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_district.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/innodb_index_stats.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/ndb_binlog_index.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/t_game.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_pre_auth_trade.frm.qp
170216 16:39:11 [03] decompressing ./mysql/tpp_t_repayment.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_text_content.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/event.MYD.qp
170216 16:39:11 [02] decompressing ./mysql/slave_worker_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_active.frm.qp
170216 16:39:11 [03] decompressing ./mysql/uc_t_staff_role.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_district.MYD.qp
170216 16:39:11 [02] decompressing ./mysql/slave_relay_log_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_question.frm.qp
170216 16:39:11 [03] decompressing ./mysql/crm_agent_company_info.frm.qp
170216 16:39:11 [04] decompressing ./mysql/help_topic.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_my_hongbao_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_role_fun.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_admin_role_priv.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/columns_priv.frm.qp
170216 16:39:11 [04] decompressing ./mysql/cd_t_credit_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/help_relation.frm.qp
170216 16:39:11 [03] decompressing ./mysql/help_category.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_hongbao_batch_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/general_log.CSM.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_function.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_licai_order_info.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_ad_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/help_category.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/t_template.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_console_menu.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_sms_log.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_district.frm.qp
170216 16:39:11 [03] decompressing ./mysql/ft_t_credit_detail_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/user.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_reimburse_order.frm.qp
170216 16:39:11 [04] decompressing ./mysql/ft_t_tender_plan.frm.qp
170216 16:39:11 [02] decompressing ./mysql/time_zone_leap_second.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/t_news_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_dict.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/sys_t_log.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/tpp_t_transfer.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_licai_project_detail_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_award_num.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_user_info.frm.qp
170216 16:39:11 [03] decompressing ./mysql/proxies_priv.frm.qp
170216 16:39:11 [02] decompressing ./mysql/con_t_fortune_pro.frm.qp
170216 16:39:11 [01] decompressing ./mysql/procs_priv.MYI.qp
170216 16:39:11 [04] decompressing ./mysql/con_t_fortune_pro.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_project_category.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/time_zone_transition.frm.qp
170216 16:39:11 [02] decompressing ./mysql/proc.frm.qp
170216 16:39:11 [04] decompressing ./mysql/t_touzi_summary.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/slow_log.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_new_project_limit.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/slow_log.CSM.qp
170216 16:39:11 [03] decompressing ./mysql/t_user_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_question_answer.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_hongbao_type.frm.qp
170216 16:39:11 [01] decompressing ./mysql/innodb_table_stats.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_active.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_total_user.frm.qp
170216 16:39:11 [02] decompressing ./mysql/time_zone.MYI.qp
170216 16:39:11 [01] decompressing ./mysql/t_awards_xmas.frm.qp
170216 16:39:11 [03] decompressing ./mysql/crm_agent_person_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/ndb_binlog_index.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/t_operation_log.frm.qp
170216 16:39:11 [04] decompressing ./mysql/crm_t_attachment.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/crm_person_info.frm.qp
170216 16:39:11 [03] decompressing ./mysql/uc_t_staff_role.frm.qp
170216 16:39:11 [04] decompressing ./mysql/t_history_yield.frm.qp
170216 16:39:11 [02] decompressing ./mysql/crm_agent_company_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_touzi_summary.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_xmas_count.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_sms_log.frm.qp
170216 16:39:11 [01] decompressing ./mysql/time_zone_name.MYD.qp
170216 16:39:11 [04] decompressing ./mysql/t_question_answer.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_xmas_record.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_menu.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_project_status_event.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_login_award.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/uc_t_role_authority.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_borrower_info.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/event.MYI.qp
170216 16:39:11 [04] decompressing ./mysql/func.MYI.qp
170216 16:39:11 [01] decompressing ./mysql/t_oauth_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_news_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_award.frm.qp
170216 16:39:11 [01] decompressing ./mysql/proc.MYI.qp
170216 16:39:11 [04] decompressing ./mysql/t_area.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_account_detail.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_licai_order_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/columns_priv.MYD.qp
170216 16:39:11 [02] decompressing ./mysql/help_keyword.frm.qp
170216 16:39:11 [01] decompressing ./mysql/db.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/slave_master_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/slave_master_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/uc_t_login_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/slave_relay_log_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_new_project_limit.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_game.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/proxies_priv.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/innodb_index_stats.frm.qp
170216 16:39:11 [04] decompressing ./mysql/t_licai_project_detail_info.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_project_tag.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_award_num.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_text_content.frm.qp
170216 16:39:11 [01] decompressing ./mysql/plugin.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_console_dictionary.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_menu.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_province.frm.qp
170216 16:39:11 [01] decompressing ./mysql/ft_t_credit_detail_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_admin.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/time_zone_transition.MYD.qp
170216 16:39:11 [02] decompressing ./mysql/help_category.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/time_zone_leap_second.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/sys_t_login_logger.frm.qp
170216 16:39:11 [04] decompressing ./mysql/crm_t_attachment.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_user_message_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/columns_priv.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/sys_t_login_logger.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/ft_t_tender_plan_credit.frm.qp
170216 16:39:11 [02] decompressing ./mysql/t_xmas_record.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/proc.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/cd_t_withdraw.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/tables_priv.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/tpp_t_transfer.frm.qp
170216 16:39:11 [03] decompressing ./mysql/time_zone_transition.MYI.qp
170216 16:39:11 [01] decompressing ./mysql/time_zone_name.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/t_project_category.frm.qp
170216 16:39:11 [04] decompressing ./mysql/time_zone_transition_type.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/t_grant_record.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_xmas_user.frm.qp
170216 16:39:11 [01] decompressing ./mysql/act_t_lottery_coupon.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_province.MYI.qp
170216 16:39:11 [03] decompressing ./mysql/crm_t_company_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/crm_t_company_info.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_award.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/t_admin_role.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/t_city.MYI.qp
170216 16:39:11 [02] decompressing ./mysql/ft_t_tender_plan.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/t_hongbao_batch_info.frm.qp
170216 16:39:11 [04] decompressing ./mysql/time_zone.frm.qp
170216 16:39:11 [03] decompressing ./mysql/ft_t_tender_plan_credit.ibd.qp
170216 16:39:11 [01] decompressing ./mysql/uc_t_login_info.frm.qp
170216 16:39:11 [02] decompressing ./mysql/innodb_table_stats.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/proxies_priv.MYI.qp
170216 16:39:11 [04] decompressing ./mysql/crm_t_third_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_console_dictionary.frm.qp
170216 16:39:11 [03] decompressing ./mysql/sys_t_log.frm.qp
170216 16:39:11 [02] decompressing ./mysql/cd_t_payment.frm.qp
170216 16:39:11 [04] decompressing ./mysql/help_topic.MYD.qp
170216 16:39:11 [03] decompressing ./mysql/uc_t_function.frm.qp
170216 16:39:11 [01] decompressing ./mysql/t_template.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/t_reimburse_order.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/crm_t_third_info.ibd.qp
170216 16:39:11 [04] decompressing ./mysql/cd_t_payment.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/crm_agent_person_info.frm.qp
170216 16:39:11 [01] decompressing ./mysql/cd_t_audit_info.ibd.qp
170216 16:39:11 [03] decompressing ./mysql/act_t_lottery_count.frm.qp
170216 16:39:11 [02] decompressing ./mysql/tpp_t_repayment.frm.qp
170216 16:39:11 [04] decompressing ./mysql/procs_priv.MYD.qp
170216 16:39:11 [01] decompressing ./mysql/t_company_application.frm.qp
170216 16:39:11 [03] decompressing ./mysql/t_project_status_event.ibd.qp
170216 16:39:11 [02] decompressing ./mysql/time_zone_transition_type.MYD.qp
170216 16:39:12 [01] decompressing ./mysql/act_t_awards_info.frm.qp
170216 16:39:12 [04] decompressing ./mysql/func.MYD.qp
170216 16:39:12 [03] decompressing ./mysql/t_third_interface_log.ibd.qp
170216 16:39:12 [02] decompressing ./mysql/general_log.CSV.qp
170216 16:39:12 [03] decompressing ./mysql/t_templet_field.ibd.qp
170216 16:39:12 [01] decompressing ./mysql/t_dict.frm.qp
170216 16:39:12 [04] decompressing ./mysql/slow_log.CSV.qp
170216 16:39:12 [02] decompressing ./mysql/help_keyword.MYD.qp
170216 16:39:12 [01] decompressing ./mysql/user.MYD.qp
170216 16:39:12 [03] decompressing ./mysql/t_company_repayment_order.frm.qp
170216 16:39:12 [01] decompressing ./mysql/act_t_lottery_count.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/cd_t_audit_info.frm.qp
170216 16:39:12 [02] decompressing ./mysql/t_login_award.frm.qp
170216 16:39:12 [03] decompressing ./mysql/t_company_application.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/t_service.frm.qp
170216 16:39:12 [01] decompressing ./mysql/t_company_user.ibd.qp
170216 16:39:12 [02] decompressing ./mysql/t_newbie_guide.frm.qp
170216 16:39:12 [03] decompressing ./mysql/func.frm.qp
170216 16:39:12 [01] decompressing ./mysql/t_company_repayment_order.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/t_ad_info.frm.qp
170216 16:39:12 [02] decompressing ./mysql/plugin.MYD.qp
170216 16:39:12 [03] decompressing ./mysql/t_newbie_guide.ibd.qp
170216 16:39:12 [01] decompressing ./mysql/crm_t_banks.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/t_hongbao_type.ibd.qp
170216 16:39:12 [02] decompressing ./mysql/crm_t_car_info.ibd.qp
170216 16:39:12 [01] decompressing ./mysql/t_user_message_info.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/t_total_user.ibd.qp
170216 16:39:12 [03] decompressing ./mysql/uc_t_department.frm.qp
170216 16:39:12 [02] decompressing ./mysql/time_zone.MYD.qp
170216 16:39:12 [01] decompressing ./mysql/t_xmas_user.ibd.qp
170216 16:39:12 [04] decompressing ./mysql/cd_t_deposite.frm.qp
170216 16:39:12 [03] decompressing ./mysql/cd_t_deposite.ibd.qp
170216 16:39:12 [02] decompressing ./mysql/act_t_activity.frm.qp
170216 16:39:12 [01] decompressing ./mysql/t_service.ibd.qp
170216 16:39:12 [03] decompressing ./mysql/time_zone_transition_type.frm.qp
170216 16:39:12 [04] decompressing ./mysql/con_t_credit_pro.frm.qp
170216 16:39:12 [02] decompressing ./mysql/help_keyword.MYI.qp
170216 16:39:12 [04] decompressing ./mysql/general_log.frm.qp
170216 16:39:12 [01] decompressing ./mysql/event.frm.qp
170216 16:39:12 [03] decompressing ./mysql/db.MYD.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_statements_summary_by_digest.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_statements_history.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_waits_summary_by_instance.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/threads.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/setup_consumers.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_stages_history_long.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/cond_instances.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_statements_current.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/file_instances.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/session_connect_attrs.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_waits_summary_global_by_event_name.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/accounts.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_statements_summary_by_host_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_waits_current.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/users.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_waits_summary_by_host_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_statements_history_long.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_waits_summary_by_user_by_event_name.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/table_io_waits_summary_by_table.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/db.opt.qp
170216 16:39:12 [02] decompressing ./performance_schema/setup_timers.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_stages_summary_by_account_by_event_name.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_statements_summary_global_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/socket_instances.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_stages_summary_by_thread_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/hosts.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/file_summary_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/file_summary_by_instance.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/mutex_instances.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_stages_current.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/performance_timers.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/socket_summary_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_statements_summary_by_account_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/setup_instruments.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_stages_history.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_stages_summary_by_host_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_waits_history_long.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/socket_summary_by_instance.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/host_cache.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/session_account_connect_attrs.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_statements_summary_by_thread_by_event_name.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_waits_summary_by_account_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/objects_summary_global_by_type.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/table_lock_waits_summary_by_table.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/events_stages_summary_global_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/table_io_waits_summary_by_index_usage.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/setup_actors.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_waits_history.frm.qp
170216 16:39:12 [02] decompressing ./performance_schema/rwlock_instances.frm.qp
170216 16:39:12 [04] decompressing ./performance_schema/events_statements_summary_by_user_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/setup_objects.frm.qp
170216 16:39:12 [01] decompressing ./performance_schema/events_stages_summary_by_user_by_event_name.frm.qp
170216 16:39:12 [03] decompressing ./performance_schema/events_waits_summary_by_thread_by_event_name.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_admin_role_priv.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_pre_auth_trade.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/uc_t_role_fun.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/uc_t_role.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_history_yield.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/act_t_activity.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_console_menu.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_withdraw_deposit_order.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_xmas_count.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/crm_person_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_admin_role.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_licai_project_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_third_interface_log.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/uc_t_role.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/cd_t_withdraw.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_city.MYD.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_withdraw_deposit_order.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_area.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/uc_t_department.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_city.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_oauth_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_province.MYD.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_my_hongbao_info.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_question.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_account_detail.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_awards_xmas.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_templet_field.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_admin.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_licai_project_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_grant_record.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/uc_t_role_authority.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_company_user.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/con_t_credit_pro.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_staff.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/act_t_lottery_coupon.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/crm_t_banks.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/uc_t_staff.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_borrower_info.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/cd_t_credit_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_operation_log.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/act_t_awards_info.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_project_tag.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/crm_t_car_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_district.MYI.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_game.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_pre_auth_trade.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/tpp_t_repayment.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_text_content.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_active.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/uc_t_staff_role.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_district.MYD.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_question.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_agent_company_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/db.opt.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_my_hongbao_info.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_role_fun.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_admin_role_priv.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/cd_t_credit_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_hongbao_batch_info.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_function.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_licai_order_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_ad_info.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_template.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_console_menu.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_sms_log.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_district.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/ft_t_credit_detail_info.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_reimburse_order.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/ft_t_tender_plan.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_news_info.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_dict.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/sys_t_log.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/tpp_t_transfer.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_licai_project_detail_info.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_award_num.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_user_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/con_t_fortune_pro.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/con_t_fortune_pro.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_project_category.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_touzi_summary.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_new_project_limit.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_user_info.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_question_answer.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_hongbao_type.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_active.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_total_user.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_awards_xmas.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_agent_person_info.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_operation_log.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/crm_t_attachment.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_person_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/uc_t_staff_role.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_history_yield.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_agent_company_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_touzi_summary.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_xmas_count.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_sms_log.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_question_answer.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_xmas_record.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_menu.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_project_status_event.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_login_award.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_role_authority.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_borrower_info.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_oauth_info.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_news_info.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_award.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_area.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_account_detail.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_licai_order_info.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/uc_t_login_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_new_project_limit.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_game.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_licai_project_detail_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_project_tag.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_award_num.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_text_content.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_console_dictionary.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_menu.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_province.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/ft_t_credit_detail_info.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_admin.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/sys_t_login_logger.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/crm_t_attachment.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_user_message_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/sys_t_login_logger.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/ft_t_tender_plan_credit.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_xmas_record.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/cd_t_withdraw.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/tpp_t_transfer.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_project_category.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_grant_record.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_xmas_user.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/act_t_lottery_coupon.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_province.MYI.qp
170216 16:39:12 [04] decompressing ./huamu_licai/crm_t_company_info.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_t_company_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_award.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_admin_role.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_city.MYI.qp
170216 16:39:12 [02] decompressing ./huamu_licai/ft_t_tender_plan.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_hongbao_batch_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/ft_t_tender_plan_credit.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_login_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/crm_t_third_info.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_console_dictionary.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/sys_t_log.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/cd_t_payment.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/uc_t_function.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_template.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_reimburse_order.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/crm_t_third_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/cd_t_payment.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/crm_agent_person_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/cd_t_audit_info.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/act_t_lottery_count.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/tpp_t_repayment.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_company_application.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_project_status_event.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/act_t_awards_info.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_third_interface_log.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_templet_field.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_dict.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_company_repayment_order.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/act_t_lottery_count.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/cd_t_audit_info.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_login_award.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_company_application.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_service.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_company_user.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_newbie_guide.frm.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_company_repayment_order.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_ad_info.frm.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_newbie_guide.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/crm_t_banks.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/t_hongbao_type.ibd.qp
170216 16:39:12 [03] decompressing ./huamu_licai/crm_t_car_info.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/t_user_message_info.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/t_total_user.ibd.qp
170216 16:39:12 [04] decompressing ./huamu_licai/uc_t_department.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_xmas_user.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/cd_t_deposite.frm.qp
170216 16:39:12 [04] decompressing ./huamu_licai/cd_t_deposite.ibd.qp
170216 16:39:12 [01] decompressing ./huamu_licai/act_t_activity.frm.qp
170216 16:39:12 [03] decompressing ./huamu_licai/t_service.ibd.qp
170216 16:39:12 [02] decompressing ./huamu_licai/con_t_credit_pro.frm.qp
170216 16:39:12 [01] decompressing ./xtrabackup_info.qp
170216 16:39:12 [03] decompressing ./xtrabackup_logfile.qp
170216 16:39:12 [04] decompressing ./test/db.opt.qp
170216 16:39:12 [02] decompressing ./xtrabackup_binlog_info.qp
170216 16:39:12 completed OK!

 

find /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 -name "*.qp" -delete

 
备份完成后,应用日志,是备份的数据保持一致

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --redo-only /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

 


下面为输出内容:

170216 16:44:05 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!".

innobackupex version 2.3.3 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 525ca7d)
xtrabackup: cd to /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42
xtrabackup: This target seems to be not prepared yet.
xtrabackup: xtrabackup_logfile detected: size=2097152, start_lsn=(10007614)
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup:   innodb_data_home_dir = ./
xtrabackup:   innodb_data_file_path = ibdata1:10M: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:10M: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.3
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 10007584 and 10007584 in ibdata files do not match the log sequence number 10007614 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...
xtrabackup: Last MySQL binlog file position 5321597, file name mysql-bin.000005

xtrabackup: starting shutdown with innodb_fast_shutdown = 1
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 10007614
170216 16:44:06 completed OK!

 
合并第一个增量备份(必须加参数--redo-only)

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32

find /data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32 -name "*.qp" -delete

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --redo-only /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 --incremental-dir=/data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32

 
合并第二个增量备份(必须加参数--redo-only)

innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/

find /data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/ -name "*.qp" -delete

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --redo-only /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 --incremental-dir=/data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/

 

准备完整的备份
#find /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 -name "*.qp" -delete

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

/etc/init.d/mysql_3306 stop
模拟数据丢失
cd /data/dbdat/3306
mv data data_bak
mkdir data

innobackupex --copy-back --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --datadir=/data/dbdata/3306/data /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

chown mysql.mysql data -R

/etc/init.d/mysql_3306 start

 



后面的步骤就和之前一样了,记得要恢复主从
这里是从哪个日志节点开始恢复呢
我们看一下最后的完整备份下的
[root@bao-work-2 2017-02-16_16-09-42]#cat xtrabackup_slave_info
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000007', MASTER_LOG_POS=17767858


change master to
master_host='10.230.200.19',
master_port=3306,
master_user='repl',
master_password='kongzhong789',
master_log_file='mysql-bin.000007',
master_log_pos=17767858;

start slave;


show slave status\G;


经过上面的测试数据全部恢复,主从同步

我现在回放一下我的实验流程

1、mysql slave 全备
2、master update
3、slave 第一次增量备份
4、master update
5、slave 第二次增量备份
6、stop slave
7mv  data data_bak ,mkdir data
8、update master

然后就是恢复数据了
1、取回完整备份
innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42
2017-02-16_16-09-42:是全备份的目录
find /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 -name "*.qp" -delete

2、合并第一个增量备份,必须加参数--redo-only
innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32

find /data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32 -name "*.qp" -delete

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --redo-only /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 --incremental-dir=/data/bak_dir/mysql/3306/incre/2017-02-16_16-17-32

2017-02-16_16-09-42:是全备份的目录
2017-02-16_16-17-32:第一次增量备份的目录

3、合并第二个增量备份(必须加参数--redo-only)
innobackupex --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --decompress --parallel=4 /data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/

find /data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/ -name "*.qp" -delete

innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock --redo-only /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42 --incremental-dir=/data/bak_dir/mysql/3306/incre/2017-02-16_16-25-24/

2017-02-16_16-25-24:第二次增量备份的目录

4、现在准备完整的备份
innobackupex --apply-log --defaults-file=/data/dbdata/3306/my.cnf --user=root --password=kongzhong123 --port=3306 --socket=/data/dbdata/3306/mysql.sock /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

mv  data data_bak
mkdir data

innobackupex --copy-back --defaults-file=/data/dbdata/3306/my.cnf --socket=/data/dbdata/3306/mysql.sock --datadir=/data/dbdata/3306/data /data/bak_dir/mysql/3306/full/2017-02-16_16-09-42

chown mysql.mysql data -R

/etc/init.d/mysql_3306 start

这个时候恢复的数据是不完整的,只是把数据恢复到了slave第二次增量备份之前
所以我们现在要重新恢复主从

cd 到完整备份的目录下
# cat xtrabackup_slave_info 
CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000007', MASTER_LOG_POS=17767858

然后执行change master to 

 

3、小结
a、Xtrabackup恢复的目的要是保证事务(数据)的一致性,Xtrabackup log会记录这些事务备份期间的状态
b、恢复过程分为2个阶段,一个是Prepare阶段,一个是copy back阶段,恢复前关闭原有实例
c、Prepare阶段会根据从innodb logfile捕获出来的信息(记录在xtrabackup log)来进行相应的前滚或回滚
d、Prepare阶段会在成功前滚或回滚后创建新的innodb logfile(空)
e、copy back阶段则是将成功恢复的全部文件复制回原来或指定的数据目录(目录应为空目录)
f、copy back前需要关闭原有实例,如果恢复到不同的实例则不需要
g、copy back完成后应做相应的权限修改
h、启动恢复后的实例并进行相关验证

 

posted @ 2017-02-15 17:09  BigBao的博客  阅读(1283)  评论(0编辑  收藏  举报