zoukankan      html  css  js  c++  java
  • MySQL日志

    一、错误日志

    记录mysqld启动和停止,以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,可以首先查看此日志。

    --log-error[=file_name] 指定mysqld保存错误日志文件的位置。如果没有给file_name值,mysqld使用错误日志名 主机名.err 并默认在参数datadir指定的目录中写入日志文件。

     

    二、二进制日志

    记录了所有的DDL和DML语句,不包括查询语句。语句以“事件”的形式保存,它描述了数据的更改过程。此日志对于灾难时的数据恢复起着极其重要的作用。

    --log-bin[=file_name] 将数据变更情况写入日志。如果没有给file_name值,默认为主机名_bin。如果给出了文件名,但没有包含路径,则文件默认被写入datadir指定的目录。

    二进制日志分三种格式:statement、row、mixed。--binlog_format进行设置。

    Statement:记录的是SQL语句。

    Row:记录每一行的变更记录。

    Mixed:以上的混合模式,默认。

     

    1. 查看

        mysqlbinlog 文件名 [-v]

    1. 删除

        方法1:reset master; 将删除所有binlog日志,新的日志标号从000001开始。

        方法2:purge master logs to ‘mysql-bin.xxxxxx’,将删除 xxxxxx 编号之前的所有日志。

        方法3:purge master logs before ‘yyyu-mm-dd hh24:mi:ss’命令,将删除该日期之前的所有日志。

        方法4:--expire_logs_days=#,设置日志的过期天数指定的天数。在[mysqld]中,加入expire_logs_days=xxx

     

      --binlog-do-db=db_name: 告诉主服务器,那些数据库将更新写入二进制日志中

      --binlog-ignore-db=db_name: 那些不保存

      注意:可以对上面的参数配置使用多个

      --binlog-safe-binlog: 经常和—sync-binlog=N(每N次日志同步磁盘)一起配合使用,是的事务在日志中的记录更加安全。

     

    三、查询日志

    记录客户端的所有语句。可以选择保存在文件或者表中。--log-output=[value,…],value可以是table、file、none的一个或者多个组合,用逗号分隔,分别表示保存在表(mysql.general_log)、文件、不保存在表和文件中。其中none的优先级最高。默认保存到文件。

    如果要启用查询日志,通过参数 --general_log={0|1}--general_log_file=file_name来进行控制。前者控制是否启用日志,后者控制日志文件的路径。默认文件名是 主机名.log,默认存放在datadir文件目录。

       

    注意:此日志对系统性能影响较大,建议一般情况下关闭。

     

    四、慢查询日志

    记录了所有执行时间超过参数 long_query_time (秒,默认10,最小0)设置值并且扫描记录不少于 min_examined_row_limit的所有SQL语句的日志(表锁定不记时)。

    默认关闭。

    --slow-query_log={0|1},slow_query_log_file[=file_name];与查询日志类似(mysql.slow_log)表。

    建议正常情况下打开此日志,并经常查看分析。

     

  • 相关阅读:
    来实现一个缩水版Vuex
    vue中的适配:px2rem
    Vue.js的复用组件开发流程
    Vue调试神器之Vue.js devTools
    浅析Vue响应式原理(三)
    逐行粒度的vuex源码分析
    vue源码解读-目录结构
    Vue源码探究-虚拟DOM的渲染
    利用hash或history实现单页面路由
    passive的作用和原理
  • 原文地址:https://www.cnblogs.com/cshaptx4869/p/10482203.html
Copyright © 2011-2022 走看看