全部博文(43)
分类: Mysql/postgreSQL
2011-05-14 19:04:22
MySQL有两种查询日志,分别是通用查询日志和慢查询日志。
通用查询日志
通用查询日志能记录所有的查询诧句。
用参数
log=
打开。
慢查询日志
和慢查询有关的参数有4个
log-slow-queries=
long_query_time=
log-queries-not-using-indexes //记录所有没有使用索引的查询,Boolean类型
log-slow-admin-statements //记录超过long_query_time的管理语句,如OPTIMIZE TABLE
在MySQL5.1中,long-slow-queries和long_query_time都是运行时的动态参数。
在MySQL5.0中,long-slow-queries丌是劢态参数,也就是说,在不重启服务器的情况下,是没法动态打开/关闭慢查询的。但是,long_query_time是动态的。所以,在慢查询已经打开的情况下,如果想关闭慢查询却又不想重启服务器,可以把long_query_time调的很大。
SET GLOBAL long_query_time=10000;
然而,想在MySQL5.0中劢态的打开慢查询就没这么方便了。
有一种方法可以变向的实现在MySQL5.0下劢态的开/关慢查询。
首先,默认的让服务器打开慢查询。
想关闭慢查询,就在慢查询日志文件上做一个软链接到/dev/null。
想打开慢查询,就删除这个软链接。