美文网首页
Xtrabackup 2.4.4 恢复Mysql5.7.19

Xtrabackup 2.4.4 恢复Mysql5.7.19

作者: W朱珠W | 来源:发表于2020-04-29 18:01 被阅读0次

    准备:安装qpress,

               安装percona-xtrabackup-24

    # yum localinstall percona-xtrabackup-24-2.4.4-1.el7.x86_64.rpm 

    # tar -xvf qpress-11-linux-x64.tar


    全备恢复的步骤

    0)提取数据

    xbstream -x < /app/mysql/backup/4771/mysql-6jdr5q_2020_04_20_01_00_00/2020_04_20_01_00_00 -C /app/mysql/tmp/4771

    1)解压备份:

    innobackupex --decompress --parallel=4 --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771

    #删除*.qp 文件

    find /app/mysql/tmp/4771/full -name *.qp |xargs rm -f

    2)全备应用日志:

    innobackupex --defaults-file=/etc/my.cnf  --apply-log  --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771/full

    3)恢复备份到数据库目录:

    innobackupex --defaults-file=/etc/my.cnf --move-back --slave-info --tmpdir=/tmp --no-version-check /app/mysql/tmp/4771/full

    rm -rf /app/mysql/data/4771/* && rm -rf /app/mysql/log/redolog/4771/* && rm -rf /app/mysql/log/binlog/4771/* && rm -rf /app/mysql/log/relaylog/4771/*

    rm -rf /app/mysql/tmp/4771/full/* && rm -rf /app/mysql/tmp/4771/inc1/*  && rm -rf /app/mysql/tmp/4771/inc2/* && rm -rf /app/mysql/tmp/4771/inc3/*

    增量备份恢复的步骤(恢复到某一时间点)

    mkdir -p /app/mysql/tmp/4771/{full,inc1,inc2,inc3}

    0)提取数据

    xbstream -x < /app/mysql/backup/4771/mysql-6jdr5q_2020_04_20_01_00_00/2020_04_20_01_00_00 -C /app/mysql/tmp/4771/full

    xbstream -x < /app/mysql/backup/4771/mysql-6jdr5q_2020_04_20_01_00_00/2020_04_21_01_00_00 -C /app/mysql/tmp/4771/inc1

    xbstream -x < /app/mysql/backup/4771/mysql-6jdr5q_2020_04_20_01_00_00/2020_04_22_01_00_00 -C /app/mysql/tmp/4771/inc2

    xbstream -x < /app/mysql/backup/4771/mysql-6jdr5q_2020_04_20_01_00_00/2020_04_23_01_00_00 -C /app/mysql/tmp/4771/inc3

    1)解压备份:

    innobackupex --decompress --parallel=4 --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771/full

    innobackupex --decompress --parallel=4 --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771/inc1

    innobackupex --decompress --parallel=4 --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771/inc2

    innobackupex --decompress --parallel=4 --slave-info --throttle=300 --use-memory=200MB --tmpdir=/tmp --lock-wait-timeout=120 --lock-wait-threshold=120 --kill-long-queries-timeout=60 --kill-long-query-type=all --lock-wait-query-type=all --no-version-check /app/mysql/tmp/4771/inc3

    #删除*.qp 文件

    cd /app/mysql/tmp/4771

    find /app/mysql/tmp/4771/full -name *.qp |xargs rm -f && find /app/mysql/tmp/4771/inc1 -name *.qp |xargs rm -f && find /app/mysql/tmp/4771/inc2 -name *.qp |xargs rm -f && find /app/mysql/tmp/4771/inc3 -name *.qp |xargs rm -f

    2)增量应用日志:

    innobackupex --defaults-file=/etc/my.cnf  --apply-log --redo-only --use-memory=200MB --slave-info  --tmpdir=/tmp /app/mysql/tmp/4771/full

    2020-4-28下午18:00做到此处

    innobackupex --defaults-file=/etc/my.cnf  --apply-log --redo-only --use-memory=200MB --slave-info  --tmpdir=/tmp /app/mysql/tmp/4771/full --incremental-dir=/app/mysql/tmp/4771/inc1

    innobackupex --defaults-file=/etc/my.cnf  --apply-log --redo-only --use-memory=200MB --slave-info  --tmpdir=/tmp /app/mysql/tmp/4771/full --incremental-dir=/app/mysql/tmp/4771/inc2

    innobackupex --defaults-file=/etc/my.cnf  --apply-log              --slave-info  --tmpdir=/tmp /app/mysql/tmp/4771/full --incremental-dir=/app/mysql/tmp/4771/inc3

    innobackupex --defaults-file=/etc/my.cnf  --apply-log              --slave-info --tmpdir=/tmp /app/mysql/tmp/4771/full

    3)恢复备份到数据库目录:

    innobackupex --defaults-file=/etc/my.cnf --move-back --slave-info --tmpdir=/tmp --no-version-check /app/mysql/tmp/4771/full

    4)修改目录权限

    chown -R mysql:mysql /app/mysql

    5)启动mysqld

    /app/mysql/base/bin/mysqld_safe --defaults-file=/etc/my.cnf --datadir=/app/mysql/data/4771  --user=mysql &

    6)验证是否恢复到预期时间

    /app/mysql/base/bin/mysql -S /app/mysql/data/4771/mysqld.sock -uroot -pXXXXXXXX -e "select * from universe.u_delay"

    7)计划恢复到2020-04-23 06:10:00

    cat /app/mysql/tmp/4771/full/xtrabackup_binlog_info

    /app/mysql/base/bin/mysqlbinlog  /app/mysql/backup/4771/mysql-6jdr5q_binlog/mysql-bin.001830 --start-position=103429731 -vv >> /tmp/load.sql

    /app/mysql/base/bin/mysqlbinlog  /app/mysql/backup/4771/mysql-6jdr5q_binlog/mysql-bin.001831 --stop-datetime="2020-04-23 06:10:00" -vv >> /tmp/load.sql

    nohup /app/mysql/base/bin/mysql -S /app/mysql/data/4771/mysqld.sock -uroot -pXXXXXXXX -e "source /tmp/load.sql" &

    8)验证时间点

    /app/mysql/base/bin/mysql -S /app/mysql/data/4771/mysqld.sock -uroot -pXXXXXXXX -e "select * from universe.u_delay"

    mysql: [Warning] Using a password on the command line interface can be insecure.

    +--------+---------------------+-----------------+

    | source | real_timestamp      | logic_timestamp |

    +--------+---------------------+-----------------+

    | ustats | 2020-04-23 06:09:59 |        73720322 |

    +--------+---------------------+-----------------+

    相关文章

      网友评论

          本文标题:Xtrabackup 2.4.4 恢复Mysql5.7.19

          本文链接:https://www.haomeiwen.com/subject/truuwhtx.html