【问题标题】:how to configure to getting general query logs and slow query logs in mysql如何配置在mysql中获取一般查询日志和慢查询日志
【发布时间】:2017-09-01 10:13:03
【问题描述】:

操作系统是 ubuntu 16.04

MySQL 版本:MySQL Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper

在我的系统中

/etc/mysql/ -> ls

conf.ddebian.cnf debian-start my.cnf my.cnf.fallback mysql.cnf mysql.conf.d

我需要在哪个文件中配置以获取一般查询日志和慢查询日志。

【问题讨论】:

    标签: mysql linux


    【解决方案1】:

    在 [mysqlId] 部分下的 /etc/my.cnf 中设置查询日志。

    general_log_file = /path/to/query.log
    general_log      = 1
    

    从 MySql 控制台启用:

    SET general_log = 1;
    

    参考:见query log doc

    或者打开日志:

    SET global general_log = 1;
    

    注意,繁忙系统上的 general_log 每秒会生成许多字节。 不久之后,您需要:

    SET global general_log = 0;
    

    以避免填满您的存储设备。警告结束。

    现在启用慢查询日志: 登录mysql控制台:mysql -u root -p

    开启慢查询日志:mysql> SET GLOBAL slow_query_log = 'ON'

    启用慢查询日志时,它会记录耗时超过 10 秒的查询。要更改此值:SET GLOBAL long_query_time = X;

    更改慢查询日志文件位置:SET GLOBAL slow_query_log_file = '/path/filename';

    重启mysql服务:sudo service mysqld restart

    如果要关闭慢查询日志:SET GLOBAL slow_query_log = 'OFF';

    【讨论】:

      【解决方案2】:

      除了阿比吉特说的,还有这个:

      log_output = FILE
      

      (其他可能是TABLEFILE,TABLE。)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-09
        • 1970-01-01
        • 2016-08-21
        • 1970-01-01
        • 2016-07-19
        相关资源
        最近更新 更多