zoukankan      html  css  js  c++  java
  • xtrabackup热备主库(带gtid),实时在线还原备库

    建议:在业务量较少的情况下做备份还原比较好,或者能设置只读那就更好了。因为一边备份一遍对数据进行更改替换,会出现各种奇葩的问题的。

    主库备份

    cd /sqlback

    innobackupex --defaults-file=/etc/my.cnf --user=root --password=123456 ./       (记得--defaults-file要放在前面,不然会报错)

    cpoy到要恢复的目标主机

    innobackupex --apply-log --user=root --password='1234568' /sqlback/back/2020-04-04_10-21-32/  (在数据库开启的状态下做,因为他要找socket,最好要账户和密码)

     停数据库 stop  mysql

    删除数据目录下面的所有文件,删除binlog目录下面的所有文件。建议最好备份一下,打个tar包这样。避免还原不成功导致数据库报废。

    innobackupex --copy-back --user=root --password='1234568' /sqlback/back/2020-04-04_10-21-32/  (在数据库关闭的状态下做,拷贝数据回来,最好要账户和密码)

    chown  -R mysql:mysql    数据库目录所有文件

    chown mysql:mysql   binlog目录下所有文件

    开启数据库   start  mysql

    查看备份的日志文件及位置

    [root@fu-db02 sqlback]# cat 2020-04-04_13-35-58/xtrabackup_info |grep binlog_pos
    binlog_pos = filename 'mysql01-bin.000004', position '194', GTID of the last change '0f719dfd-7583-11ea-bc48-00505697d068:1-223377'

    mysql> SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;   (记录状态)
    mysql> SET @@SESSION.SQL_LOG_BIN= 0;      (接下来的操作不记录锦二进制日志)
    mysql> SET @@GLOBAL.GTID_PURGED='0f719dfd-7583-11ea-bc48-00505697d068:1-223377';    (设置gtid,这一步有可能会master有值,导致设置报错。可以用:show variables like'%gtid_purged%'; 来查看。用reset  master;来清0)
    mysql> SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;  (还原最初状态)

    重新配置主备

    CHANGE MASTER TO MASTER_HOST='192.168.126.12',MASTER_USER='repl',MASTER_PASSWORD='dtet123',MASTER_PORT=3306,MASTER_AUTO_POSITION=1;

    有一些是会读很老的二进制日志的,用下面这个来解决。

    CHANGE MASTER TO MASTER_HOST='192.168.131.243',MASTER_USER='repl',MASTER_PASSWORD='123456',MASTER_PORT=3306,MASTER_LOG_FILE=mysql01-bin.000004', Master_Log_Pos=194;

    start slave

    show slave statusG

  • 相关阅读:
    P3 创建项目(下)
    P2 创建项目(中)
    P1 创建项目(上)
    ASP.NET Core 3.x 入门视频(完结)
    网易云微专业《职场人必学的Python技能课》
    01.Python配置与运行
    阶段一-03.地址,订单,支付,定时任务开发-第1章 收货地址功能开发-1-6 收货地址
    ASYNC PROGRAMING IN JAVASCRIPT[转]
    Bluebird-NodeJs的Promise
    理解Nodejs的Event Loop
  • 原文地址:https://www.cnblogs.com/xingyunfashi/p/12635921.html
Copyright © 2011-2022 走看看