PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 数据库 >> MySQL >> 

配置mysql记录执行缓慢的sql

配置mysql记录执行缓慢的sql

来源:PHP程序员站  作者:PHP程序员站  发布时间:2011-07-03
MySQL数据库的query查询时间往往取决于【是否建立索引】、【数据量多寡】、【query查询的方法】等,然而【是否建立索引】的因素却是影响query查询时间最重要的因素之一。 举个例子:如果你的Table(User)中有一个name的字段,当你要查询姓氏为林的使用者,通常你会这样

MySQL数据库的query查询时间往往取决于【是否建立索引】、【数据量多寡】、【query查询的方法】…等,然而【是否建立索引】的因素却是影响query查询时间最重要的因素之一。
举个例子:如果你的Table(User)中有一个name的字段,当你要查询姓氏为’林’的使用者,通常你会这样下SQL语法
SELECT * FROM User WHERE name like ‘%林%’;
如此,一般而言你会将name这个字段加入index索引中,否则当数据量大时,query时间的快慢就会明显出现差异了。

当完成了一个网站后,程序中针对MySQL查询(query)的次数那么多,那要如何找出query查询时间较长的语法呢?其实在my.cnf设定档中(一般在/etc/my.cnf),已经提供了参数可以直接产生log记录档案,让管理者可以很清楚了解到那些查询(query)的语法花费较多的时间。

请在my.cnf设定文件中,找到[mysqld]卷标,在此卷标下面加上:
log-slow-queries = /path/slow-query.log #slow query记录文件的路储存路径
long_query_time = 2 #query超过2秒时,则会记录
log-queries-not-using-indexes #没有索引的记录,则会记录

设定完成my.cnf后,请记得要重新启动MySQL

其中,log-slow-queries记录文件的储存路径,这个目录一定要是mysql使用者可以写入权限的位置,因为slow-query.log记录文件是由mysql使用者去执行写入;否则,会造成记录档案无法产生的情况,这个问题是最常发生,请切记!


延伸阅读:
新手必读之--php5 MySQL5 apache2 phpmyadmin ZendOptimizer安装与配置
Win2003下APACHE PHP5 MYSQL4 PHPMYADMIN 的简易安装配置
教你学Apache+PHP+MySQL详细配置
MySQL5.0的my.cnf配置说明
Windows下的Apache+php+mysql安装与配置图解
对MySQL性能影响关系紧密的五大配置参数
无法载入MYSQL扩展,请检查PHP配置
Tags: 配置   mysql   执行缓慢   sql  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号