zoukankan      html  css  js  c++  java
  • 日志管理

    1、错误日志:

      (1)查看日志地址

        select @@log_error;

      (2)更改日志地址

        log_error=/tmp/mysql3306err.log

    -----------------------------------------------------------------------------------------------------------------

    2、二进制日志(binlog)

      (0) 查看二进制日志开启状态

          select @@sql_log_bin;

          开启关闭日志(关闭当前会话,全局修改配置文件)

          set  sql_log_bin=1/0;

      (1)主从要依赖二进制日志

      (2)数据恢复时需要依赖二进制日志

      (3)配置:  默认没有开启

        server_id=6

        log_bin=/data/binlog/mysql-bin  日志路径,创建/data/binlog 并给权限重启生效

          给权限  chown -R mysql.mysql  /data。 mysql-bin是文件名前缀

          例如 mysql-bin.00001,mysql-bin.000002。mysql会自动生成

        binlog_format=row   5.7默认配置,可以省略

        sync_binlog=1   每次事务提交立即将binlog刷写到磁盘,双1标准其中一个1,另一个是innodb_flush_method

      (4)记录的是数据库所有变更类的操作日志(DDL,DCL,DML)

          (1)DDL/DCL:  记录的是原模原样的SQL语句

          (2)DML:记录已提交的事务(statement、row、mixed)

               通过binlog_format=row 控制,对DDL.DCL没有影响

          (3)statement:SBR,语句模式记录日志,做什么命令,记录什么命令

              可读性强,对于范围操作日志量小,但是可能会出现记录不准确的情况

          (4)row: RBR,行模式,数据行的变化(redo 做的是数据页的变化)

              可读性差,对于范围操作日志量大,但是数据不会出现记录错误

          (5)mixed: MBR,混合模式,由Mysql决定用哪种模式

    3、二进制文件的管理

      (1)查看二进制文件地址

        select @@log_bin_basename;

        show variables like '%log_bin%';

      (2)查看二进制模式

        select @@binlog_format;

      (3)查看二进制日志文件

        show binary logs;

      (4)滚动日志

        flush logs;

        reset master;清除所有日志,编号从1开始,开启了主从慎用,会崩

      (5) 查看正在使用的日志文件

        show master status;  

      (6)查看二进制事件

        show binlog events in 'mysql-bin.000004';

        mysqlbinlog --base64-output=decode-rows -vvv mysql-bin.000004  详情mysqlbinlog --help

      (7)截取事件

        mysqlbinlog --skip-gtids --start-position=219 --stop-position=578 mysql-bin.00004   通过开始和结束编号截取日志

        mysqlbinlog --skip-gtids -d test mysql-bin.00004    截取test库下的所有日志

        mysqlbinlog --skip-gtids --include-gtids='c1678cc2-270a-11eb-bd2e-000c29e32742:1-3' /data/binlog/mysql-bin.000007     >/tmp/gtids.sql  截图gtid编号的日志

      (8)清除日志

          手动清除

            purge binary logs to 'mysql-bin.000010'   清除mysql-bin.000010之前的日志(不包括本条)

            purge binary logs before '2020-11-16 22:05:00'  清除这个时间之前的日志

          自动清除

            expire_logs_days=15   保留15天的日志

       

      

    ------------恢复内容结束------------

  • 相关阅读:
    图解IntelliJ IDEA v13应用服务器的运行配置
    探秘IntelliJ IDEA v13的应用服务器
    WebStorm中Node.js项目配置教程(1)——创建项目
    Web神器WebStorm 8.0测试版发放(慧都独家)
    三个创建WebStorm项目的方法
    清明假期【未完成】
    DOM查询
    正则表达式
    Httpservlet cannot be resolved to a type的原因与解决方法
    解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】
  • 原文地址:https://www.cnblogs.com/ruan-ruan/p/13977616.html
Copyright © 2011-2022 走看看