Home  >  Article  >  Database  >  mysql备份工具之Xtrabackup

mysql备份工具之Xtrabackup

WBOY
WBOYOriginal
2016-06-07 16:42:23873browse

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.全备份时压缩以节省资源

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn