指定数据库备份
[root@node1]# innobackupex --defaults-file=/data/3306/my.cnf --user=root --password=password --databases="db01" /backup/dbs/

指定表备份
[root@node1]# innobackupex --defaults-file=/data/3306/my.cnf --user=root --password=password --databases="db01 tab1" /backup/dbs/

以压缩格式备份
[root@node1]# innobackupex --defaults-file=/data/3306/my.cnf --user=root --password=password --stream=tar /backup/full/|gzip>/backup/full/back_`date +%F`.tar.gz

常用参数

–user=     #指定数据库备份用户
–password= #指定数据库备份用户密码
–port= #指定数据库端口
–host= #指定备份主机
–socket= #指定socket文件路径
–databases= #备份指定数据库,多个空格隔开,如–databases=”dbname1 dbname2″,不加备份所有库
–defaults-file= #指定my.cnf配置文件
–apply-log #日志回滚
–incremental= #增量备份,后跟增量备份路径
–incremental-basedir= #增量备份,指上次增量备份路径
–redo-only #合并全备和增量备份数据文件
–copy-back #将备份数据复制到数据库,数据库目录要为空
–no-timestamp #生成备份文件不以时间戳为目录名
–stream= #指定流的格式做备份,–stream=tar,将备份文件归档
–remote-host=user@ip DST_DIR #备份到远程主机

  

2、完整备份与恢复

2.1 完整备份
# innobackupex --user=bak --password='bak2015' /mysql_backup
2.2 备份恢复
# innobackupex --defaults-file=/etc/mysql/my.cnf --copy-back /home/loongtao/mysql_backup/2015-02-08_11-56-48/
2.3 备份文件说明 # ls 2015-02-08_11-56-48
backup-my.cnf:记录innobackup使用到mysql参数
xtrabackup_binary:备份中用到的可执行文件
xtrabackup_checkpoints:记录备份的类型、开始和结束的日志序列号
xtrabackup_logfile:备份中会开启一个log copy线程,用来监控innodb日志文件(ib_logfile),如果修改就会复制到这个文件

  

3、完整备份+增量备份与恢复

3.1 完整备份
# innobackupex --user=bak --password='bak2015' /mysql_backup
备份后位置是:/mysql_backup/2015-02-08_11-56-48 3.2 增量备份1
# innobackupex --user=bak --password='bak2015' --incremental /data1/mysql_backup --incremental-basedir=/mysql_backup/2015-02-08_11-56-48 #指定上次完整备份目录
3.3 增量备份2
# innobackupex --user=bak --password='bak2015' --incremental /data1/mysql_backup --incremental-basedir=/mysql_backup/2015-02-08_12-16-06 #指定上次增量备份目录
3.4 查看xtrabackup_checkpoints文件
一目了然,可以看到根据日志序号来增量备份

  

3.5 备份恢复

3.5.1 备份恢复思路
将增量备份1、增量备份2…合并到完整备份,加到一起出来一个新的完整备份,将新的完整备份以拷贝的形式到数据库空目录(rm /var/lib/mysql/* -rf) 3.5.2 预备完整备份
xtrabackup把备份过程中可能有尚未提交的事务或已经提交但未同步数据文件的事务,写到xtrabackup_logfile文件,所以要先通过这个日志文件回滚,把未完成的事务同步到备份文件,保证数据文件处于一致性。 # innobackup --apply-log --redo-only 2015-02-08_11-56-48
3.5.3 合并第一个增量备份
# innobackupex --apply-log --redo-only /mysql_backup/2015-02-08_11-56-48/ --incremental-dir=mysql_backup/2015-02-08_12-16-06
3.5.4 合并第二个增量备份
# innobackupex --apply-log --redo-only /mysql_backup/2015-02-08_11-56-48/ --incremental-dir=mysql_backup/2015-02-08_16-06-53
3.5.5 恢复完整备份
这时2015-02-08_11-56-48完整备份已经包含所有增量备份,可以通过查看checkpoints来核实 # innobackupex --defaults-file=/etc/mysql/my.cnf --copy-back /mysql_backup/2015-02-08_11-56-48/
3.5.6 修改恢复数据文件权限
# chown -R mysql.mysql /var/lib/mysql
3.5.7 启动MySQL,查看数据库恢复情况
# /etc/init.d/mysqld start

  

4、备份文件归档压缩

4.1 归档并发送到备份服务器
# innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup 2>/mysql_backup/bak.log |ssh root@192.168.18.251 "cat - > /mysql_backup/`date +%F`.tar"
解压:tar -ixvf `date +%F`.tar 4.2 归档备份
# innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup > /mysql_backup/`date +%F`.tar
解压:tar -ixvf `date +%F`.tar 4.3 压缩归档备份
# innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup |gzip >/mysql_backup/`date +%F`.tar.gz
解压:tar -izxvf `date +%F`.tar.gz

  

转自下面链接

http://codecloud.net/21389.html

最新文章

  1. spring boot(一):入门篇
  2. 【Java每日一题】20161216
  3. linq之let子句
  4. IOS开发中如何实现自动检测更新APP
  5. wordpress 常用函数 checked(),selected(),disabled()
  6. 【BZOJ 1085】 [SCOI2005]骑士精神
  7. 【http】client
  8. Unity3d 实现顶点动画
  9. Python之路第十二天,高级(5)-Python操作Mysql,SqlAlchemy
  10. 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)
  11. 脚本添加crontab任务【转】
  12. 纯CSS实现table表头固定(自创备忘)
  13. 一步一步学多线程-ThreadLocal源码解析
  14. 轮播swiper配置选项
  15. 第七章:四大组件之Service
  16. [06] JSTL标准标签库
  17. max_result_window
  18. vue-router重定向 不刷新问题
  19. 【Unity】11.5 物理材质 (Physics Material)
  20. mybatis的selectOne和selectList没有数据返回时的问题

热门文章

  1. 算数运算符& 关系运算符
  2. 非node环境下的vue.js 实现简单的购物车计算功能 样式请无视
  3. java 接口1
  4. 给定一个只包含正整数的非空数组,返回该数组中重复次数最多的前N个数字 ,返回的结果按重复次数从多到少降序排列(N不存在取值非法的情况)
  5. Thymeleaf中href与 th:href的区别
  6. 使用TkbmMWThreadList实现线程安全列表
  7. Qt设置创建部分半透明,上面控件不透明
  8. 利用iftop找出是谁占用了带宽
  9. Linux上更换默认的java版本
  10. Measuring Text Difficulty Using Parse-Tree Frequency