美文网首页
Mysql之日志

Mysql之日志

作者: 每天进步一点点变成更好的自己 | 来源:发表于2022-03-28 12:11 被阅读0次

    mysql的日志种类:通用查询日志、慢查询日志、错误日志、二进制日志、中继日志、重做日志、回滚日志。

    1、通用查询日志

    通用查询日志:记录了所有用户的连接开始时间和截止时间,以及发给mysql数据库服务器的所有SQL日志。文本型数据,可以用记事本打开。
    查询通用查询日志:SHOW VARIABLES LIKE '%general%';
    开启通用查询日志:SET GLOBAL general_log = 'ON';
    指定通用查询日志的文件夹和文件名:SET @@global.general_log_file = 'H:\mytest.log';
    general_log :general_log 变量表示通用查询日志的状态。

    
    mysql> SHOW VARIABLES LIKE '%general%';
    +------------------+---------------+
    | Variable_name | Value |
    +------------------+---------------+
    | general_log | OFF | -- 通用查询日志处于关闭状态
    | general_log_file | GJTECH-PC.log | -- 通用查询日志文件的名称是GJTECH-PC.log
    +------------------+---------------+
    2 rows in set, 1 warning (0.00 sec)
    
    
    mysql> SET GLOBAL general_log = 'ON';   --开启通用查询日志
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> SET @@global.general_log_file = 'H:\mytest.log'; -指定通用查询日志的文件夹和文件名
    Query OK, 0 rows affected (0.02 sec)
    

    2、慢查询日志

    慢查询日志:用来记录执行时间超过指定时长的查询。慢查询日志的主要作用是发现那些执行时间特别长的SQL查询,并且有针对性地进行优化,从而提高系统的整体效率。文本型数据,可以用记事本打开。

    慢查询日志路径,默认就是数据目录:"C:\ProgramData\MySQL\MySQL Server 8.0\Data",找到my.ini文件。long_query_time 和slow-query-log 这2个变量共同组成了判别一个查询是否是慢查询的条件。

    配置文件中关于慢查询日志变量的设定:
    --开启慢查询日志:`slow-query-log=1`
    --表示慢查询日志的名称是"GJTECH-PC-slow.log":`slow_query_log_file="GJTECH-PC-slow.log"  `
    --慢查询的标准是查询执行时间超过10秒:`long_query_time=10  `
    --控制慢查询日志的系统变量,查询扫描过的最少记录数,默认值为0:`min_examined_row_limit`
    

    3、错误日志

    错误日志记录了mysql服务器的启动、停止运行的时间,以及系统启动、运行和停止过程中的诊断信息,包括错误、警告和提示等。
    错误日志默认是开启的。我们可以在 MySQL 的配置文件“my.ini”中配置它

    
    # Error Logging.
    log-error="GJTECH-PC.err"
    

    总结:

    • 通用查询日志
      可以记录所有连接的起始时间和终止时间,以及连接发送给数据库服务器的所有指令,对我们复原操作的实际场景、发现问题,甚至是对数据库操作的审计都有很大的帮助。
    • 慢查询日志
      可以记录运行时间和检查记录数超过指定值的查询,方便我们对查询进行优化。
    • 错误日志
      它记录了服务器启动、运行和停止过程中的诊断信息,方便我们了解服务器的状态,从而对服务器进行维护。

    相关文章

      网友评论

          本文标题:Mysql之日志

          本文链接:https://www.haomeiwen.com/subject/xzwujrtx.html