• 二十四、二进制日志截取与恢复


    截取二进制日志

    1、按照位置截取二进制日志

    #使用>导出
    $ mysqlbinlog --start-position=219 --stop-position=335 mysql-bin.000004 >/tmp/a.sql
    

    2、按照时间截取二进制日志

    #使用-r参数导出
    $ mysqlbinlog 
    --start-datetime="2021-03-30 17:14:15" 
    --stop-datetime='2021-03-30 17:15:15' 
    mysql-bin.000004 -r /tmp/b.sql
    

    通过binlog恢复数据

    只能作为辅助修复方法,如果数据太多日志数量也就越多不方便查找。

    #模拟数据
    mysql> create database haoge charset utf8mb4;
    mysql> use haoge;
    mysql> create table t1(id int);
    mysql> insert into t1 values(1);
    mysql> commit;
    
    #模拟故障 
    mysql> drop database haoge;
    
    #确认使用的日志文件
    mysql> show master status;   
    
    #查看事件
    mysql> show binlog events in 'mysql-bin.000004'; 
    
    #如果事件太多可导出结果进行查找
    $ mysql -e  "show binlog events in 'mysql-bin.000004'; "   > /tmp/mysql-bin.txt
    
    #找到起点和终点,进行截取
    $ mysqlbinlog --start-position=823 --stop-position=1420 /data/binlog/mysql-bin.000004 >/tmp/bin.sql
    
    #恢复binlog
    mysql> set sql_log_bin=0;   #临时关闭二进制日志记录以防恢复时产生的新日志
    mysql> source /tmp/bin.sql
    mysql> set sql_log_bin=1;  
    

    学习来自:老男孩深标DBA课程 第六章 日志管理

    今天的学习是为了以后的工作更加的轻松!
  • 相关阅读:
    http://caibaojian.com/jquery/ JQuery在线查询手册
    验证码
    显式提交/隐式提交 //ajax方式的隐式提交
    事物 银行转账业务
    模板 Template
    登录页面跳转与错误提示信息
    连接池 八种基本类型
    文件,文件夹的基本操作--------数据流的传输
    vim编辑器
    Linux中创建和使用静态库&动态库
  • 原文地址:https://www.cnblogs.com/tz90/p/14598681.html
Copyright © 2020-2023  润新知