zoukankan      html  css  js  c++  java
  • mysql binlog

    Binlog 简介

    MySQL中一般有以下几种日志:

    日志类型写入日志的信息
    错误日志 记录在启动,运行或停止mysqld时遇到的问题
    通用查询日志 记录建立的客户端连接和执行的语句
    二进制日志 记录更改数据的语句
    中继日志 从复制主服务器接收的数据更改
    慢查询日志 记录所有执行时间超过 long_query_time 秒的所有查询或不使用索引的查询
    DDL日志(元数据日志) 元数据操作由DDL语句执行

    MySQL 的二进制日志 binlog 可以说是 MySQL 最重要的日志,它记录了所有的 DDL 和 DML 语句(除了数据查询语句select、show等),以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的。binlog 的主要目的是复制和恢复

    Binlog日志的两个最重要的使用场景

    • MySQL主从复制:MySQL Replication在Master端开启binlog,Master把它的二进制日志传递给slaves来达到master-slave数据一致的目的
    • 数据恢复:通过使用 mysqlbinlog工具来使恢复数据

    常用的Binlog操作命令

    # 是否启用binlog日志
    show variables like 'log_bin';
    
    # 查看详细的日志配置信息
    show global variables like '%log%';
    
    # mysql数据存储目录
    show variables like '%dir%';
    
    # 查看binlog的目录
    show global variables like "%log_bin%";
    
    # 查看当前服务器使用的biglog文件及大小
    show binary logs;
    
    # 查看最新一个binlog日志文件名称和Position
    show master status;
    
    # 事件查询命令
    # IN 'log_name' :指定要查询的binlog文件名(不指定就是第一个binlog文件)
    # FROM pos :指定从哪个pos起始点开始查起(不指定就是从整个文件首个pos点开始算)
    # LIMIT [offset,] :偏移量(不指定就是0)
    # row_count :查询总条数(不指定就是所有行)
    show binlog events [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count];
    
    # 查看 binlog 内容
    show binlog events;
    
    # 查看具体一个binlog文件的内容 (in 后面为binlog的文件名)
    show binlog events in 'master.000003';
    -- 把二进制binlog日志转化成为文本
    cd C:Program FilesMySQLmysql-5.7.24-winx64in
    mysqlbinlog -vv --base64-output=decode-rows ../data/mysql-bin.000107> d:/tt.txt
    mysqlbinlog -vv --base64-output=decode-rows ../data/mysql-bin.000107 --start-datetime="2021-09-18 08:00:00" --stop-datetime="2021-09-18 08:10:00"  > d:/tt2.txt

    查看文章:https://www.cnblogs.com/whirly/p/10511344.html MySQL Binlog 介绍

    https://www.cnblogs.com/wangb2/p/12162242.html mysqlbinlog命令的参数

    https://www.jianshu.com/p/ecc3b88bdb18 阿里云RDS的binlog,本地查看

  • 相关阅读:
    2020年秋招联发科小米等20家公司面经总结
    一个普通硕士生的2020秋招总结(文末送福利)
    Linux内核中container_of宏的详细解释
    拒绝造轮子!如何移植并使用Linux内核的通用链表(附完整代码实现)
    UWB硬件设计相关内容
    SpringToolSuit(STS)添加了Lombok后仍然报错
    Spring Boot整合Mybatis出现错误java.lang.IllegalStateException: Cannot load driver class:com.mysql.cj.jdbc.Driver
    Word快捷选取
    微服务下的用户登录权限校验解决方案
    Spring Boot 使用Mybatis注解开发增删改查
  • 原文地址:https://www.cnblogs.com/ooo0/p/15307392.html
Copyright © 2011-2022 走看看