zoukankan      html  css  js  c++  java
  • MySQL慢查询配置

    一、查看文件安装路径

    • 由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址)。

    • 以mysql为例。比如说我安装了mysql,但是不知道文件都安装在哪些地方、放在哪些文件夹里,可以用下面的命令查看所有的文件路径

    • 在终端输入:whereis mysql
      回车,如果你安装好了mysql,就会显示文件安装的地址,例如我的显示(安装地址可能会不同)

    [root@dbproxy01 ~]# whereis mysql
    mysql: /bin/mysql /usr/bin/mysql /usr/lib64/mysql /usr/include/mysql /usr/local/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
    [root@dbproxy01 ~]# 
    

    二、查询运行文件所在路径(文件夹地址)

    • 如果你只要查询文件的运行文件所在地址,直接用下面的命令就可以了(还是以mysql为例):

    • 在终端输入 which mysql

    [root@dbproxy01 ~]# which mysql
    /bin/mysql
    [root@dbproxy01 ~]# 
    

    三、修改慢查询配置

    方法一:修改mysql的my.cnf文件
    • Linux:
    log-slow-queries=/usr/local/mysql/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log)
    long_query_time=1 (记录超过的时间,默认为10s)
    log-queries-not-using-indexes (log下来没有使用索引的query,可以根据情况决定是否开启)
    log-long-format (如果设置了,所有没有使用索引的查询也将被记录)
    
    • Windows:
    在my.ini的[mysqld]添加如下语句:
    log-slow-queries = D:wwwmysqllogmysqlslowquery.log
    long_query_time = 1(其他参数如上)
    保存后重启mysql即可加载配置
    --注意
    llog-slow-queries=/usr/local/mysql/slowquery.log 为慢查询日志存放的位置,一般这个目录要有MySQL的运行帐号的可写权限,一般都将这个目录设置为MySQL的数据存放目录;
    long_query_time=1中的1表示查询超过两秒才记录;
    
    方法二:命令方式
    cd /usr/local/mysql/bin
    mysql -u root -p
    enter password
     
    mysql> show variables like ”%long%”;         //查看一下默认为慢查询的时间10秒
    +—————–+———–+
    | Variable_name   | Value     |
    +—————–+———–+
    | long_query_time | 10.000000 |
    +—————–+———–+
    1 row in set (0.00 sec)
     
    mysql> set global long_query_time=2;          //设置成2秒,加上global,下次进mysql已然生效
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> show variables like ”%slow%”;          //查看一下慢查询是不是已经开启
    +———————+———————————+
    | Variable_name       | Value                           |
    +———————+———————————+
    | log_slow_queries    | OFF                             |
    | slow_launch_time    | 2                               |
    | slow_query_log      | OFF                             |
    | slow_query_log_file | /usr/local/mysql/mysql-slow.log |
    +———————+———————————+
    4 rows in set (0.00 sec)
     
    mysql> set slow_query_log=’ON’;                        //加上global,不然会报错的。
    ERROR 1229 (HY000): Variable ’slow_query_log’ is a GLOBAL variable and should be set with SET GLOBAL
    
    mysql> set global slow_query_log=’ON’;            //启用慢查询
    Query OK, 0 rows affected (0.28 sec)
     
    mysql> show variables like ”%slow%”;              //查看是否已经开启
    +———————+———————————+
    | Variable_name       | Value                           |
    +———————+———————————+
    | log_slow_queries    | ON                              |
    | slow_launch_time    | 2                               |
    | slow_query_log      | ON                              |
    | slow_query_log_file | /usr/local/mysql/mysql-slow.log |
    +———————+———————————+
    
  • 相关阅读:
    [Python Study Notes]进程信息(丁丁软件监控进程,http-post)
    [Python Study Notes]cpu信息
    [Python Study Notes]电池信息
    [Python Study Notes]内存信息
    [Python Study Notes]磁盘信息和IO性能
    [Python Study Notes]计算cpu使用率v0.1
    [Python Study Notes]计算cpu使用率
    [Python Study Notes]psutil模块
    [解决问题] E: 无法获得锁 /var/lib/dpkg/lock
    [Python Study Notes] python面试题总结
  • 原文地址:https://www.cnblogs.com/gczheng/p/9323493.html
Copyright © 2011-2022 走看看