mysql备份和恢复测试(一)--xtrabackup

--下载xtranbackup2.0.6,这里使用的是rpm安装
http://www.percona.com/redir/downloads/XtraBackup/XtraBackup-2.0.6/RPM/rhel5/x86_64/percona-xtrabackup-2.0.6-521.rhel5.x86_64.rpm
[root@tmg-73 soft]# rpm -ivh percona-xtrabackup-2.0.6-521.rhel5.x86_64.rpm 
warning: percona-xtrabackup-2.0.6-521.rhel5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID cd2efd2a
Preparing...                ########################################### [100%]
   1:percona-xtrabackup     ########################################### [100%]
--xtrabackup 备份和恢复测试
--1 创建测试环境
mysql> use study
mysql> create table t1 as select * from mysql.user;
mysql> insert into t1 select * from t1;                          
mysql> exit
--2 执行备份
[root@tmg-73 soft]# xtrabackup --help
[root@tmg-73 soft]# xtrabackup --defaults-file=/etc/my.cnf --backup --target-dir=/home/mysql/data/temp
--3 关闭mysql 服务:
[root@tmg-73 temp]# mysqladmin shutdown
--4 删除数据文件和innodb log
[root@tmg-73 mysql]# rm ib
ibdata1      ib_logfile0  ib_logfile1  
[root@tmg-73 mysql]# rm -rf ib*
--5 使用xtrabackup 恢复数据
[root@tmg-73 mysql]#  xtrabackup --defaults-file=/etc/my.cnf --prepare --target-dir=/home/mysql/data/temp
- -6 将生成的文件拷贝备份到/home1/mysql/data/mysql
[root@tmg-73 temp]# pwd
/home/mysql/data/temp
[root@tmg-73 temp]# cp ibdata1 /home1/mysql/data/mysql
[root@tmg-73 mysql]# chown mysql:mysql ibdata1 
--使用innobackupex-1.5.1 备份和恢复
--innobackupex-1.5.1 工具是用PERL包装过的”xtrabackup“,他不旦可以备份INNODB,还可以备份MYISAM等非事务数据库;
[root@tmg-73 temp]# innobackupex-1.5.1  --help
[root@tmg-73 temp]# innobackupex-1.5.1 -user=root -password=zhong#123 -host=127.0.0.1 -port=3306 -slave-info -tmpdir=/home/mysql/data/temp -defaults-file=/etc/my.cnf /home/mysql/data/temp >/home/mysql/data/temp/xtrabk.log 
注意:在备份过程中,把INNODB数据文件备份完成后,会锁住整个库,并开始复制MYISAM等非事务引擎的数据和.frm;
--3 关闭mysql 服务:
[root@tmg-73 temp]# mysqladmin shutdown
--4 删除数据文件和innodb log
[root@tmg-73 mysql]# rm * -rf
--5 使用xtrabackup 全量恢复
--1 应用日志
-- 这个过程主要是产生REDOLOG并将备份期间产生的REDO应用到数据文件中;
-- xtrabackup 会启动一个INNODB进程去做,与你当前在跑的不冲突
[root@tmg-73 mysql]# innobackupex-1.5.1 -apply-log /home/mysql/data/temp/2013-04-11_16-29-44/ 
--2 复制数据文件到数据目录
## 这个过程将恢复好的数据复制到my.cnf中指定的数据目录中。 这时你需要把原有的实例停掉
[root@tmg-73 mysql]# innobackupex-1.5.1 -copy-back /home/mysql/data/temp/2013-04-11_16-29-44/ 
--启动mysql服务报错,结果查看目录是root
[root@tmg-73 mysql]# ll
total 1379736
drwxr-xr-x 2 root  root        4096 Apr 11 17:02 bak245
drwxr-xr-x 2 root  root        4096 Apr 11 17:01 dbact
drwxr-xr-x 2 root  root        4096 Apr 11 17:02 dbslave
-rw-r--r-- 1 root  root  1411383296 Apr 11 17:02 ibdata1
drwxr-xr-x 2 root  root        4096 Apr 11 17:01 mysql
-rw-rw---- 1 mysql mysql          0 Apr 11 17:03 mysql-bin.index
drwxr-xr-x 2 root  root        4096 Apr 11 17:02 performance_schema
drwxr-xr-x 2 root  root       40960 Apr 11 17:02 qunle20
drwxr-xr-x 2 root  root        4096 Apr 11 17:01 study
drwxr-xr-x 2 root  root        4096 Apr 11 17:01 test
-rw-rw---- 1 mysql root         868 Apr 11 17:03 tmg-73.err
-rw-r--r-- 1 root  root          23 Apr 11 17:01 xtrabackup_binlog_pos_innodb
-rw-r--r-- 1 root  root          72 Apr 11 17:01 xtrabackup_slave_info
[root@tmg-73 mysql]# chown mysql:mysql * -R
重新修改所属组,一切ok
--增量备份 
--1,指定备份根目录
[root@tmg-73 mysql]# xtrabackup --defaults-file=/etc/my.cnf --backup --target-dir=/home/mysql/data/temp/incr01/ --incremental-basedir=/home/mysql/data/temp/2013-04-11_17-39-33/
--在/home/mysql/data/temp/incr01将产生一些.delta数据文件;
--恢复 (先恢复全量备份的日志)
--用增量备份加入全量数据
xtrabackup --defaults-file=/etc/my.cnf --prepare --target-dir=/home/mysql/data/temp/2013-04-11_17-39-33/
xtrabackup --target-dir=/home/mysql/data/temp/2013-04-11_17-39-33/ --prepare  --incremental-dir=/home/mysql/data/temp/incr01/
--应用日志
xtrabackup --defaults-file=/etc/my.cnf --prepare --target-dir=/home/mysql/data/temp/2013-04-11_17-39-33/

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23073818/viewspace-758306/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23073818/viewspace-758306/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值