我在WAMP中激活一般查询日志文件时遇到问题我已经查看了许多线程,但似乎无法写入日志。
我尝试了很好的查询和错误的查询来尝试查看日志。
有什么建议吗?
这是我的my.ini
# The MySQL server
[wampmysqld]
port = 3306
socket = /tmp/mysql.sock
key_buffer_size = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
basedir=c:/wamp/bin/mysql/mysql5.6.17
log-error=c:/wamp/logs/mysql.log
datadir=c:/wamp/bin/mysql/mysql5.6.17/data
log-output = FILE
general-log = 1
general_log_file=C:/wamp/logs/general-query.log
答案 0 :(得分:4)
general-log
中有拼写错误。它应该是general_log
然后重启mysql。
在重启(例如
)后检查变量select @@general_log; -- 0 (that means OFF). 1 is ON.
select @@general_log_file; -- GUYSMILEY.log
select @@datadir; -- C:\ProgramData\MySQL\MySQL Server 5.6\Data\
select @@version; -- 5.6.31-log
要设置动态变量以覆盖cnf或ini文件设置,请执行以下操作:
set GLOBAL general_log=1;
请记住,它是datadir
,而不是basedir
。您可能需要在Windows上打开隐藏文件夹的查看,才能看到\ProgramData
,如果这是您datadir
点的位置。
最后,您不需要使用错误sql语句欺骗它。通用查询日志适用于所有查询。
有关它的屏幕截图视图,请参阅This Answer。请记住,它适用于所有查询。所以关闭它,制作副本,删除,重新打开,重新生成。不要忘记在生产中激活常规日志会降低性能。
另外,请参阅Gryphius的answer。
修改(根据您的评论中的问题)。
如果未在cnf或ini设置中镜像,则动态变量的更改将稍纵即逝。意思是,它们会在mysql重启时重置。
我不知道关闭错误日志记录的方法也不是我想要的。错误很少发生,对它们的了解非常重要。所以下面应该满足你的4个好奇心中的3个:
show variables like '%error%';
show variables like '%slow%';
log_error -- string for filename
slow_query_log -- set to 'ON' or 1, 'OFF' or 0
slow_query_log_file; --- string for filename
然后始终有show variables;
有关slow query log的更多信息。如果将long_query_time
设置得足够高,它将有效滤除更多噪音。它是在几秒钟内,从0到10.而Percona一篇文章虽然过时了。
select @@long_query_time;
+-------------------+
| @@long_query_time |
+-------------------+
| 10.000000 |
+-------------------+
注意,我似乎无法使用SET GLOBAL
stmt设置上述内容。所以它似乎只是cnf或ini文件的设置。但是你可以做到以下几点:
select @@slow_query_log; -- to see current value
select @@slow_query_log_file; -- to see current value (file in datadir)
select @@datadir; -- to see current value
set global slow_query_log=0; -- Turn Off
-- make a backup of it with a move and rename (See Note1) to a folder below datadir
set global slow_query_log=1; -- Turn it back On (new empty file is created)
注1:复制的文件图像,在上面的Note1时间点重命名。 Image Here