首頁  >  文章  >  資料庫  >  mysql备份工具之Xtrabackup

mysql备份工具之Xtrabackup

WBOY
WBOY原創
2016-06-07 16:42:23874瀏覽

Xtrabackup是一个对InnoDB存储引擎做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDBHotbackup的一个很好的替代品.Xtrabackup有两个

    Xtrabackup是一个对InnoDB存储引擎做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品.Xtrabackup有两个主要工具:xtrabackup,innobackupex,且只能备份InnoDB和XtraDB两种存储引擎的表,而不能备份MyISAM数据表

 

1.下载安装xtrabackup工具

[root@tong2 ~]# wget

[root@tong2 ~]# tar xvf Percona-XtraBackup-2.2.7-r5050-el6-x86_64-bundle.tar

[root@tong2 ~]# ll percona-xtrabackup-*
-rw-rw-r--. 1 root root 4863276 Dec  4 22:18 percona-xtrabackup-2.2.7-5050.el6.x86_64.rpm
-rw-rw-r--. 1 root root  648012 Dec  4 22:18 percona-xtrabackup-debuginfo-2.2.7-5050.el6.x86_64.rpm
-rw-rw-r--. 1 root root  961432 Dec  4 22:18 percona-xtrabackup-test-2.2.7-5050.el6.x86_64.rpm[root@tong2 ~]# yum localinstall percona-xtrabackup-*  -y

[root@tong2 ~]# rpm -ql percona-xtrabackup-2.2.7-5050.el6.x86_64
/usr/bin/innobackupex
/usr/bin/xbcrypt
/usr/bin/xbstream
/usr/bin/xtrabackup
/usr/share/doc/percona-xtrabackup-2.2.7
/usr/share/doc/percona-xtrabackup-2.2.7/COPYING
[root@tong2 ~]#

 

 2.创建数据库和innodb表

[root@tong2 ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 5.6.21-log MySQL Community Server (GPL)

Copyright (c) 2000, 2014, 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> \u tong
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> create table t (a int) engine=innodb;
Query OK, 0 rows affected (0.27 sec)

mysql> insert into t values(1),(2),(3),(4),(5);
Query OK, 5 rows affected (0.03 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from t;
+------+
| a    |
+------+
|    1 |
|    2 |
|    3 |
|    4 |
|    5 |
+------+
5 rows in set (0.00 sec)

mysql> exit
Bye
[root@tong2 ~]#

 

3.完整备份innodb存储引擎的表

[root@tong2 ~]# innobackupex --help |more     --查看帮助信息

[root@tong2 ~]# innobackupex --user=root --password=system /opt/tong 2> /opt/tong/backup.log

[root@tong2 ~]# ll /opt/tong/2015-01-04_16-00-37/
total 12324
-rw-r--r--. 1 root root      295 Jan  4 16:00 backup-my.cnf
-rw-r-----. 1 root root 12582912 Jan  4 16:00 ibdata1
drwx------. 2 root root     4096 Jan  4 16:00 mysql
drwxr-xr-x. 2 root root     4096 Jan  4 16:00 performance_schema
drwxr-xr-x. 2 root root     4096 Jan  4 16:00 test
drwx------. 2 root root     4096 Jan  4 16:00 tong
-rw-r--r--. 1 root root       22 Jan  4 16:00 xtrabackup_binlog_info           --二进制日志信息
-rw-r-----. 1 root root       89 Jan  4 16:00 xtrabackup_checkpoints         --备份数据的检查点
-rw-r--r--. 1 root root      553 Jan  4 16:00 xtrabackup_info                    --备份信息
-rw-r-----. 1 root root     2560 Jan  4 16:00 xtrabackup_logfile                --日志文件

[root@tong2 ~]# innobackupex --user=root --password=system --databases=tong /opt/tong     --备份指定的数据库2> /opt/tong/backup.log
[root@tong2 ~]# ll /opt/tong/2015-01-04_16-02-36/
total 12312
-rw-r--r--. 1 root root      295 Jan  4 16:02 backup-my.cnf
-rw-r-----. 1 root root 12582912 Jan  4 16:02 ibdata1
drwx------. 2 root root     4096 Jan  4 16:02 tong
-rw-r--r--. 1 root root       22 Jan  4 16:02 xtrabackup_binlog_info
-rw-r-----. 1 root root       89 Jan  4 16:02 xtrabackup_checkpoints
-rw-r--r--. 1 root root      570 Jan  4 16:02 xtrabackup_info
-rw-r-----. 1 root root     2560 Jan  4 16:02 xtrabackup_logfile
[root@tong2 ~]#

 

4.在完整备份中添加增量备份

[root@tong2 ~]# innobackupex --user=root --password=system --incremental --incremental-basedir=/opt/tong/2015-01-04_17-34-25/ /opt/tong    

--incremental     --增量备份

--incremental-basedir    --完整备份文件的路径

/opt/tong                     --增量备份文件存放处

 

5.全备份时压缩以节省资源

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn