还有也许 发表于 2013-1-29 16:19:46

mysql 慢查询配置

1、需要更改的配置文件
    如果是window 环境的话,在mysql server 安装目录下找到my.ini 文件,然后将配置添加进去即可,具体可参照Linux的配置。
    如果是Linux版的话,首先去找my.cnf文件,并不在安装目录下,一般都在/etc  下面。
2、修改配置文件
     以Linux为例,打开my.cnf,找到的配置不是的配置,然后在下面加上两句话
      log-slow-queries=/usr/data/mysqlslowlog/slowquery.log 
      long_query_time=2
    其中路径是我亲自建的,不知道是否系统会自己创建,log文件,系统会自动创建。
3、重启 mysql 服务  service mysql restart
4、查看配置是否生效
      可在mysql 命令行上打上 命令  
           show variables like '%quer%';
    查看 log-slow-queries 是否为on;
   接着去看刚才的log日志是否自动创建了,如果有,说明创建成功了。
5、校验是否可以记录大于自己设定的多少秒的语句(我设定的为两秒)
      在mysql命令行输入  select sleep(2);   执行
      去log日志中查看是否记录上。记录上说明配置生效了。
 
由于log日志记录的文件不便于阅读,所以需要借助工具进行查看。
可以通过mysql自带的命令mysqldumpslow 。(该命令是在Linux下执行的,而不是在mysql命令行下)
常用参数说明:
 
分析日志,可用mysql提供的mysqldumpslow,使用很简单,参数可–help查看
<div class="wp_syntax"><div class="code"># -s:排序方式。c , t , l , r 表示记录次数、时间、查询时间的多少、返回的记录数排序;#                           ac , at , al , ar 表示相应的倒叙;# -t:返回前面多少条的数据;# -g:包含什么,大小写不敏感的;mysqldumpslow -s r -t 10   /usr/data/mysqlslowlog/slowquery.log  #slow记录最多的10个语句mysqldumpslow -s t -t 10 -g "left join"/usr/data/mysqlslowlog/slowquery.log #按照时间排序前10中含有"left join"的
页: [1]
查看完整版本: mysql 慢查询配置