Answers:
[mysqld]
# Set Slow Query Log
long_query_time = 1
slow_query_log = 1
slow_query_log_file = /usr/log/slowquery.log
log_queries_not_using_indexes = 1
#Set General Log
general_log = on
general_log_file=/usr/log/general.log
请注意,general_log
在生产服务器上启用会产生开销,您应该避免这样做。您可以从中检查有问题的查询slow log
。
general_log
并且general_log_file
足够。
由于这是您可能只想临时执行的操作,因此从外壳而不是通过配置文件执行此操作可能会很有用:
> set global general_log_file = "/var/log/mysql/queries.log";
> set global general_log = "ON";
[wait some time, hit some pages, whatever]
> set global general_log = "OFF";
将这两行放在my.cnf中。
[mysqld]
general_log = on
general_log_file=/users/ugrad/linehanp/mydb/logfile.txt
这会将所有查询从任何来源记录到服务器,而不仅仅是PHP / PHPMyAdmin。
不过请小心-启用常规日志可能会给您的服务器带来沉重的负担。仅在短期/调试中少量使用。
该文档可在此处获得。来回:
要在运行时禁用或启用常规查询日志或更改日志文件名,请使用全局general_log和general_log_file系统变量。将general_log设置为0(或OFF)以禁用该日志,或将其设置为1(或ON)以启用它。设置general_log_file以指定日志文件的名称。
所以,
general_log = on
和
general_log = 1
是同义词!