zoukankan      html  css  js  c++  java
  • MySQL备份与恢复之percona-xtrabackup实现增量备份及恢复 实例

    innobackupex 的使用方法
    1.完全备份 参数一是完全备份地址 完全备份到/data/mysql/back_up/all_testdb_20140612 目录下
    innobackupex --user=root --password=123456 --no-timestamp /data/mysql/back_up/all_testdb_20140612
    现在完整备份的目录为/data/mysql/back_up/all_testdb_20140612

    2.增量备份
    第一次
    sh incremental_backup.sh /data/mysql/back_up/back_up_20140601 /data/mysql/back_up/all_testdb_20140612
    第二次
    sh incremental_backup.sh /data/mysql/back_up/back_up_20140602 /data/mysql/back_up/back_up_20140601
    第三次
    sh incremental_backup.sh /data/mysql/back_up/back_up_20140603 /data/mysql/back_up/back_up_20140602
    具体脚本如下:
    innobackupex --user=root --password=123456 --no-timestamp --incremental $1  --incremental-basedir=$2 --defaults-file=/etc/my.cnf
    具体目录如下:
    drwxr-xr-x. 7 root root 4096 6月  12 14:29 all_testdb_20140612  //全量备份地址
    drwxr-xr-x. 7 root root 4096 6月  12 14:31 back_up_20140601    //第一次备份地址
    drwxr-xr-x. 7 root root 4096 6月  12 14:32 back_up_20140602    //第二次备份地址
    drwxr-xr-x. 7 root root 4096 6月  12 14:32 back_up_20140603    //第三场备份地址
    选项--incremental是指定作增量备份 --incremental-basedir选项是指定上一次增量备份的目录(如果是第一次作增量备份,则为完整备份的目录)。
    3.还原
    增量备份的还原操作跟完整的还原有点不一样,首先必须使用--apply-log --redo-only对完整备份的目录及所有增量备份目录进行操作,然后就可以像还原完整备份时的操作了。
    对每个备份目录作apply-log redo-only操作(包括完整备份)
    innobackupex --apply-log --redo-only /data/mysql/back_up/all_testdb_20140612  --user=root --password=123456
    innobackupex --apply-log --redo-only /data/mysql/back_up/all_testdb_20140612  --incremental-dir=/data/mysql/back_up/back_up_20140601 --user=root --password=123456
    innobackupex --apply-log --redo-only /data/mysql/back_up/all_testdb_20140612  --incremental-dir=/data/mysql/back_up/back_up_20140602 --user=root --password=123456
    innobackupex --apply-log --redo-only /data/mysql/back_up/all_testdb_20140612  --incremental-dir=/data/mysql/back_up/back_up_20140603 --user=root --password=123456

    下面就跟还原完整备份时一样了
    /etc/init.d/mysqld stop
    //删除原有的数据
    rm -rf /var/lib/mysql/*
    //生成新的数据
    innobackupex --copy-back /data/mysql/back_up/all_testdb_20140612
    chown -R mysql.mysql /var/lib/mysql/
    /etc/init.d/mysqld start

    如果有问题可以加我微信(baolongsj)共同学习和进步…..
  • 相关阅读:
    echo
    shell
    grub
    find
    脚本案例
    dd if= of= MBR
    cat <<EOF> file
    fieldset——一个不常用的HTML标签
    闪烁图片
    跑马灯效果
  • 原文地址:https://www.cnblogs.com/521football/p/3783943.html
Copyright © 2011-2022 走看看