MySQL有两种查询日志,分别是通用查询日志和慢查询日志。 通用查询日志 通用查询日志能记录所有的查询诧句。 用参数 log=<file_name> 打开。 慢查询日志 和慢查询有关的参数有4个 log-slow-queries=<file_name> 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。 想打开慢查询,就删除这个软链接。 |