1. 程式人生 > >MySQL 系列連載之 XtraBackup 增量熱備 or 恢復實踐(3)

MySQL 系列連載之 XtraBackup 增量熱備 or 恢復實踐(3)

導讀

如果您在本文遇到任何問題或疑問請到QQ群中與我們交流。也可在下方進行評論。我將在第一時間和您進行交流,共同學習。
QQ群:201777608、526871767、1689067(加群時註明:運維派)

增量備份和恢復

特別注意:

innobackupex 增量備份僅針對InnoDB這類支援事務的引擎,對於MyISAM等引擎,則仍然是全備。

1)增量備份操作

增量備份需要基於全量備份

先假設我們已經有了一個全量備份(如上面的/backup/mysql/data/2017-04-04_16-56-35),我們需要在該全量備份的基礎上做第一次增量備份。

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –incremental-basedir=/backup/mysql/data/2017-04-04_16-56-35/ –incremental /backup/mysql/data

其中:

–incremental-basedir 指向全量備份目錄 –incremental 指向增量備份的目錄

上面語句執行成功之後,會在–incremental執行的目錄下建立一個時間戳子目錄(本例中為:/backup/mysql/data/2017-04-04_14-37-24),在該目錄下存放著增量備份的所有檔案。

[[email protected] data]# ll
總用量 8
drwxr-xr-x 6 root root 4096 4月 4 16:56 2017-04-04_16-56-35 //全量備份目錄
drwxr-xr-x 6 root root 4096 4月 4 16:59 2017-04-04_16-58-58 //增量備份目錄

在備份目錄下,有一個檔案xtrabackup_checkpoints記錄著備份資訊,其中可以查出

1)全量備份的資訊如下:

[[email protected] data]# cd /backup/mysql/data/2017-04-04_16-56-35/
[[email protected] 2017-04-04_16-56-35]# cat xtrabackup_checkpoints
backup_type = full-backuped
from_lsn = 0
to_lsn = 1639436
last_lsn = 1639436
compact = 0

2)基於以上全量備份的增量備份的資訊如下:

[[email protected] data]# cd /backup/mysql/data/2017-04-04_16-58-58/
[[email protected] 2017-04-04_16-58-58]# cat xtrabackup_checkpoints
backup_type = incremental
from_lsn = 1639436
to_lsn = 1639436
last_lsn = 1639436
compact = 0

從上面可以看出,增量備份的from_lsn正好等於全備的to_lsn。

那麼,我們是否可以在增量備份的基礎上再做增量備份呢?

答案是肯定的,只要把–incremental-basedir執行上一次增量備份的目錄即可,如下所示:

[[email protected] data]# innobackupex –defaults-file=/etc/my.cnf –user=root –incremental-basedir=/backup/mysql/data/2017-04-04_16-58-58/ –incremental /backup/mysql/data

[[email protected] ~]# ll /backup/mysql/data/
總用量 12
drwxr-xr-x 6 root root 4096 4月 4 16:56 2017-04-04_16-56-35 //全量備份目錄
drwxr-xr-x 6 root root 4096 4月 4 16:59 2017-04-04_16-58-58 //增量備份目錄1
drwxr-xr-x 6 root root 4096 4月 4 17:02 2017-04-04_17-02-35 //增量備份目錄2

它的trabackup_checkpoints記錄著備份資訊如下:

[[email protected] ~]# cd /backup/mysql/data/2017-04-04_17-02-35/
[[email protected] 2017-04-04_17-02-35]# cat xtrabackup_checkpoints
backup_type = incremental
from_lsn = 1639436
to_lsn = 1639436
last_lsn = 1639436
compact = 0

可以看到,第二次增量備份的from_lsn是從上一次增量備份的to_lsn開始的

2)增量備份後的恢復操作

增量備份的恢復要比全量備份複雜很多,增量備份與全量備份有著一些不同,尤其要注意的是:

1)需要在每個備份(包括完全和各個增量備份)上,將已經提交的事務進行“重放”。“重放”之後,所有的備份資料將合併到完全備份上。

2)基於所有的備份將未提交的事務進行“回滾”。於是,操作就變成了:不能回滾,因為有可能第一次備份時候沒提交,在增量中已經成功提交

第一步是在所有備份目錄下重做已提交的日誌(注意備份目錄路徑要跟全路徑)

其中:

一定要全路徑

BASE-DIR 是指全量備份的目錄

INCREMENTAL-DIR-1 是指第一次增量備份的目錄

INCREMENTAL-DIR-2 是指第二次增量備份的目錄,以此類推。

這裡要注意的是:

1)最後一步的增量備份並沒有–redo-only選項!回滾進行崩潰恢復過程

2)可以使用–use_memory提高效能。

3)以上語句執行成功之後,最終資料在BASE-DIR(即全量目錄)下,其實增量備份就是把增量目錄下的資料,整合到全變數目錄下,然後在進行,全資料量的還原。

第一步完成之後,我們開始下面關鍵的第二步,即拷貝檔案,進行全部還原!注意:必須先停止mysql資料庫,然後清空資料庫目錄(這裡是指/data/mysql/data)下的檔案。

4)innobackupex –copy-back BASE-DIR

同樣地,拷貝結束之後,記得檢查下資料目錄(這裡指/data/mysql/data)的許可權是否正確(修改成mysql:mysql),然後再重啟mysql。

接下來進行案例說明:

假設我們已經有了一個全量備份2017-04-04_16-56-35 刪除在上面測試建立的兩個增量備份

[[email protected] ~]# cd /backup/mysql/data/

[[email protected] data]# ll
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_16-56-35
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_16-58-58
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_17-02-35

[[email protected] data]# rm -fr 2017-04-04_16-58-58 2017-04-04_17-02-35

[[email protected] data]# ll
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_16-56-35

假設在全量備份後,mysql資料庫中又有新資料寫入

#進入資料庫
[[email protected] data]# mysql

#建立一個叫做 ceshi 的資料庫
mysql> create database ceshi;
Query OK, 1 row affected (0.00 sec)

#切換到 ceshi 庫下
mysql> use ceshi
Database changed

#建立一個叫做 test1 的表
mysql> create table test1(
-> id int3,
-> name varchar(20)
-> );
Query OK, 0 rows affected (0.26 sec)

#往test1表中插入資料
mysql> insert into test1 values(1,”chenbaojia”);
Query OK, 1 row affected (0.05 sec)

#檢視 test1 表中的內容
mysql> select * from test1;
+——+————+
| id | name |
+——+————+
| 1 | chenbaojia |
+——+————+
1 row in set (0.00 sec)

#檢視當前所有資料庫
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| ceshi |
| mysql |
| performance_schema |
| test |
+——————–+
5 rows in set (0.00 sec)

然後進行一次增量備份:

[[email protected] data]# innobackupex –defaults-file=/etc/my.cnf –user=root –incremental-basedir=/backup/mysql/data/2017-04-04_16-56-35/ –incremental /backup/mysql/data/

[[email protected] data]# ll
總用量 8
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_16-56-35 //全量備份目錄
drwxr-xr-x 6 root root 4096 4月 4 17:28 2017-04-04_17-28-14 //增量備份目錄

接著再在mysql資料庫中寫入新資料

[[email protected] data]# mysql

mysql> use ceshi;
Database changed

mysql> insert into test1 values(2,”pelosi”);
Query OK, 1 row affected (0.11 sec)

mysql> insert into test1 values(3,”hiofo”);
Query OK, 1 row affected (0.06 sec)

mysql> insert into test1 values(4,”mac”);
Query OK, 1 row affected (0.09 sec)

mysql> select * from test1;
+——+————+
| id | name |
+——+————+
| 1 | chenbaojia |
| 2 | pelosi |
| 3 | hiofo |
| 4 | mac |
+——+————+
4 rows in set (0.00 sec)

接著在增量的基礎上再進行一次增量備份

–incremental-basedi 要寫上次最後增量備份的目錄

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –incremental-basedir=/backup/mysql/data/2017-04-04_17-28-14/ –incremental /backup/mysql/data

[[email protected] ~]# ll /backup/mysql/data/
總用量 12
drwxr-xr-x 6 root root 4096 4月 4 17:08 2017-04-04_16-56-35 //全量備份目錄
drwxr-xr-x 6 root root 4096 4月 4 17:28 2017-04-04_17-28-14 //全量備份目錄
drwxr-xr-x 6 root root 4096 4月 4 17:38 2017-04-04_17-37-58 //全量備份目錄

現在刪除資料庫ceshi 、 test

[[email protected] ~]# mysql

mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| ceshi |
| mysql |
| performance_schema |
| test |
+——————–+
5 rows in set (0.00 sec)

mysql> drop database ceshi;
Query OK, 1 row affected (0.07 sec)

mysql> drop database test;
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
+——————–+
3 rows in set (0.00 sec)

接下來就開始進行資料恢復操作:

先恢復應用日誌(注意最後一個不需要加–redo-only引數)

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –apply-log –redo-only /backup/mysql/data/2017-04-04_16-56-35/

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –apply-log –redo-only /backup/mysql/data/2017-04-04_16-56-35/ –incremental-dir=/backup/mysql/data/2017-04-04_17-28-14/

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –apply-log /backup/mysql/data/2017-04-04_16-56-35/ –incremental-dir=/backup/mysql/data/2017-04-04_17-37-58/

到此,恢復資料工作還沒有結束!還有最重要的一個環節,就是把增量目錄下的資料整合到全量備份目錄下,然後再進行一次全量還原。

停止mysql資料庫,並清空資料目錄

[[email protected] ~]# /etc/init.d/mysqld stop
Shutting down MySQL. SUCCESS!
[[email protected] ~]# rm -fr /application/mysql/data/*

最後拷貝檔案,並驗證資料目錄的許可權

[[email protected] ~]# innobackupex –defaults-file=/etc/my.cnf –user=root –copy-back /backup/mysql/data/2017-04-04_16-56-35/

[[email protected] ~]# chown -R mysql.mysql /application/mysql/data/*

[[email protected] ~]# /etc/init.d/mysqld start
Starting MySQL.. SUCCESS!

[[email protected] ~]# mysql

mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| ceshi |
| mysql |
| performance_schema |
| test |
| xtra_test |
+——————–+
6 rows in set (0.00 sec)

mysql> select * from ceshi.test1;
+——+————+
| id | name |
+——+————+
| 1 | chenbaojia |
| 2 | pelosi |
| 3 | hiofo |
| 4 | mac |
+——+————+
4 rows in set (0.00 sec)

另外注意: 上面在做備份的時候,將備份目錄和增量目錄都放在了同一個目錄路徑下,其實推薦放在不同的路徑下,方便管理!比如:

/backup/mysql/data/full 存放全量備份目錄

/backup/mysql/data/daily1 存放第一次增量備份目錄

/backup/mysql/data/daily2 存放第二次增量目錄

以此類推

在恢復的時候,注意命令中的路徑要跟對!

innobackupex 引數

xtrabackup命令只備份資料檔案,並不備份資料表結構(.frm),所以使用xtrabackup恢復的時候必須有對應表結構檔案(.frm)。用innobackupex命令,此命令相當於冷備份,複製資料目錄的索引,資料,結構檔案,但會有短暫的鎖表(時間依賴於MyISAM大小)。

innobackupex 常用引數說明 –defaults-file 同xtrabackup的–defaults-file引數

–apply-log 對xtrabackup的–prepare引數的封裝

–copy-back 做資料恢復時將備份資料檔案拷貝到MySQL伺服器的datadir ;

–remote-host=HOSTNAME 通過ssh將備份資料儲存到程序伺服器上;

–stream=[tar] 備 份檔案輸出格式, tar時使用tar4ibd , 該檔案可在XtarBackup binary檔案中獲得.如果備份時有指定–stream=tar, 則tar4ibd檔案所處目錄一定要在$PATH中(因為使用的是tar4ibd去壓縮, 在XtraBackup的binary包中可獲得該檔案)。 在 使用引數stream=tar備份的時候,你的xtrabackup_logfile可能會臨時放在/tmp目錄下,如果你備份的時候併發寫入較大的話 xtrabackup_logfile可能會很大(5G+),很可能會撐滿你的/tmp目錄,可以通過引數–tmpdir指定目錄來解決這個問題。

–tmpdir=DIRECTORY 當有指定–remote-host or –stream時, 事務日誌臨時儲存的目錄, 預設採用MySQL配置檔案中所指定的臨時目錄tmpdir

–redo-only –apply-log組, 強制備份日誌時只redo ,跳過rollback。這在做增量備份時非常必要。

–use-memory=# 該引數在prepare的時候使用,控制prepare時innodb例項使用的記憶體量

–throttle=IOS 同xtrabackup的–throttle引數

–sleep=是給ibbackup使用的,指定每備份1M資料,過程停止拷貝多少毫秒,也是為了在備份時儘量減小對正常業務的影響,具體可以檢視ibbackup的手冊 ;

–compress[=LEVEL] 對備份資料迚行壓縮,僅支援ibbackup,xtrabackup還沒有實現;

–include=REGEXP 對 xtrabackup引數–tables的封裝,也支援ibbackup。備份包含的庫表,例如:–include=”test.”,意思是要備份 test庫中所有的表。如果需要全備份,則省略這個引數;如果需要備份test庫下的2個表:test1和test2,則寫 成:–include=”test.test1|test.test2″。也可以使用萬用字元,如:–include=”test.test”。

–databases=LIST 列出需要備份的databases,如果沒有指定該引數,所有包含MyISAM和InnoDB表的database都會被備份;

–uncompress 解壓備份的資料檔案,支援ibbackup,xtrabackup還沒有實現該功能;

–slave-info, 備 份從庫, 加上–slave-info備份目錄下會多生成一個xtrabackup_slave_info 檔案, 這裡會儲存主日誌檔案以及偏移, 檔案內容類似於:CHANGE MASTER TO MASTER_LOG_FILE=”, MASTER_LOG_POS=0

–socket=SOCKET 指定mysql.sock所在位置,以便備份程序登入mysql.

更多引數見:http://www.percona.com/doc/percona-xtrabackup/2.1/innobackupex/innobackupex_option_reference.html

innobackupex全量、增量備份指令碼

可以根據自己線上資料庫情況,編寫全量和增量備份指令碼,然後結合crontab設定計劃執行。

比如:每週日的1:00進行全量備份,每週1-6的1:00進行增量備份。

還可以在腳本里編寫郵件通知資訊(可以用mail或sendemail)

FAQ

1、可能報錯1

      Can’t locate Time/HiRes.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /home/mysql/admin/bin/percona-xtrabackup-2.1.9/innobackupex line 23.
    BEGIN failed–compilation aborted at /home/mysql/admin/bin/percona-xtrabackup-2.1.9/innobackupex line 23.

解決方案:

.pm實際上是Perl的包,只需安裝perl-Time-HiRes即可:

[[email protected] percona-xtrabackup-2.1.9]# yum install -y perl-Time-HiRes

2、可能報錯2

      Can’t locate DBI.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/local/webserver/mysql5.1.57/bin/mysqlhotcopy line 25.
    BEGIN failed–compilation aborted at /usr/local/webserver/mysql5.1.57/bin/mysqlhotcopy line 25.

報錯原因:系統沒有按安裝DBI元件。

DBI(Database Interface)是perl連線資料庫的介面。其是perl連線資料庫的最優秀方法,他支援包括Orcal,Sybase,mysql,db2等絕大多數的資料庫。

解決辦法:

安裝DBI元件(Can’t locate DBI.pm in @INC-mysql介面)

或者單獨裝DBI、Data-ShowTable、DBD-mysql 三個元件

[[email protected] percona-xtrabackup-2.1.9]# yum -y install perl-DBD-MySQL
接著使用innobackupex命令測試是否正常

[[email protected] percona-xtrabackup-2.1.9]# innobackupex –help
Options:
–apply-log
Prepare a backup in BACKUP-DIR by applying the transaction log file
named “xtrabackup_logfile” located in the same directory. Also,
create new transaction logs. The InnoDB configuration is read from
the file “backup-my.cnf”.

–compact
Create a compact backup with all secondary index pages omitted. This
option is passed directly to xtrabackup. See xtrabackup
documentation for details.

–compress
This option instructs xtrabackup to compress backup copies of InnoDB
data files. It is passed directly to the xtrabackup child process.
Try ‘xtrabackup –help’ for more details.

3、可能報錯3

161130 05:56:48 innobackupex: Connecting to MySQL server with DSN ‘dbi:mysql:;mysql_read_default_file=/usr/local/mysql/my.cnf;mysql_read_default_group=xtrabackup’ as ‘root’ (using password: YES).
innobackupex: Error: Failed to connect to MySQL server as DBD::mysql module is not installed at /home/mysql/admin/bin/percona-xtrabackup-2.1.9/innobackupex line 2956.

解決辦法:

[[email protected] ~]# yum -y install perl-DBD-MySQL.x86_64
……
Package perl-DBD-MySQL-4.013-3.el6.x86_64 already installed and latest version //發現本機已經安裝了

[[email protected] ~]# rpm -qa|grep perl-DBD-MySQL
perl-DBD-MySQL-4.013-3.el6.x86_64
發現本機已經安裝了最新版的perl-DBD-MYSQL了,但是仍然報出上面的錯誤!! 莫慌~~繼續下面的操作進行問題的解決

檢視mysql.so依賴的lib庫

[[email protected] ~]# ldd /usr/lib64/perl5/auto/DBD/mysql/mysql.so
linux-vdso.so.1 => (0x00007ffd291fc000)
libmysqlclient.so.16 => not found //這一項為通過檢查,缺失libmysqlclient.so.16庫導致
libz.so.1 => /lib64/libz.so.1 (0x00007f78ff9de000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f78ff7a7000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f78ff58e000)
libm.so.6 => /lib64/libm.so.6 (0x00007f78ff309000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f78ff09d000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f78fecb9000)
libc.so.6 => /lib64/libc.so.6 (0x00007f78fe924000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f78fe721000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f78fe4dd000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f78fe1f5000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f78fdff1000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f78fddc5000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f78fdbc0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f78ffe1d000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f78fd9b5000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f78fd7b2000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f78fd597000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f78fd37a000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f78fd15a000)
以上結果說明缺少libmysqlclient.so.16這個二進位制包,找個官方原版的mysql的libmysqlclient.so.16替換了即可!

[[email protected]~]# find / -name libmysqlclient.so.16 //檢視本機並沒有libmysqlclient.so.16庫檔案
檢視mysql/lib下的libmysqlclinet.so庫檔案

[[email protected]~]# ll /usr/local/mysql/lib/
total 234596
-rw-r–r–. 1 mysql mysql 19520800 Nov 29 12:27 libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 16 Nov 29 12:34 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 17 Nov 29 12:34 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx. 1 mysql mysql 20 Nov 29 12:34 libmysqlclient_r.so.18 -> libmysqlclient.so.18
lrwxrwxrwx. 1 mysql mysql 24 Nov 29 12:34 libmysqlclient_r.so.18.1.0 -> libmysqlclient.so.18.1.0
lrwxrwxrwx. 1 mysql mysql 20 Nov 29 12:34 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx. 1 mysql mysql 24 Nov 29 12:34 libmysqlclient.so.18 -> libmysqlclient.so.18.1.0
-rwxr-xr-x. 1 mysql mysql 8858235 Nov 29 12:27 libmysqlclient.so.18.1.0
-rw-r–r–. 1 mysql mysql 211822074 Nov 29 12:34 libmysqld.a
-rw-r–r–. 1 mysql mysql 14270 Nov 29 12:27 libmysqlservices.a
drwxr-xr-x. 3 mysql mysql 4096 Nov 29 12:34 plugin
將mysql/lib/libmysqlclient.so.18.1.0庫檔案拷貝到/lib64下,拷貝後命名為libmysqlclient.so.16

[[email protected]~]# cp /usr/local/mysql/lib/libmysqlclient.so.18.1.0 /lib64/libmysqlclient.so.16

[[email protected]~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/mysql/lib/
/lib64/
[[email protected]~]# ldconfig

最後解除安裝perl-DBD-MySQL,並重新安裝perl-DBD-MySQL
[[email protected]~]# rpm -qa|grep perl-DBD-MySQL
perl-DBD-MySQL-4.013-3.el6.x86_64
[[email protected]~]# rpm -e –nodeps perl-DBD-MySQL
[[email protected]~]# rpm -qa|grep perl-DBD-MySQL
[[email protected]~]# yum -y install perl-DBD-MySQL
待重新安裝後,再次重新檢查mysql.so依賴的lib庫,發現已經都通過了

[[email protected]~]# ldd /usr/lib64/perl5/auto/DBD/mysql/mysql.so
linux-vdso.so.1 => (0x00007ffe3669b000)
libmysqlclient.so.16 => /usr/lib64/mysql/libmysqlclient.so.16 (0x00007f4af5c25000)
libz.so.1 => /lib64/libz.so.1 (0x00007f4af5a0f000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f4af57d7000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f4af55be000)
libm.so.6 => /lib64/libm.so.6 (0x00007f4af533a000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f4af50cd000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f4af4ce9000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4af4955000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f4af4751000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f4af450d000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f4af4226000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f4af4021000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f4af3df5000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4af3bf1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4af61d1000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f4af39e5000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f4af37e2000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f4af35c8000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4af33aa000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f4af318b000)

4、可能報錯4

      sh: xtrabackup_56: command not found
    innobackupex: Error: no ‘mysqld’ group in MySQL options at /home/mysql/admin/bin/percona-xtrabackup-2.1.9/innobackupex line 4350.

有可能是percona-xtrabackup編譯安裝後,在編譯目錄的src下存在xtrabackup_innodb55,只需要其更名為xtrabackup_55,然後拷貝到上面的/home/mysql/admin/bin/percona-xtrabackup-2.1.9/下即可!

後記

感謝您閱讀。