php - can't enable MySql general query log file on wamp running mysql 5.6 -


i having trouble activating general query log file in wamp have viewed many threads , can't seem write log.

i have tried both queries , bad queries try trip log.

any suggestions?

this my.ini

# 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 

you have typo in general-log. should general_log

and mysql restart.

and check variables, after restart such as

select @@general_log; -- 0 (that means off). 1 on. select @@general_log_file; -- guysmiley.log select @@datadir; -- c:\programdata\mysql\mysql server 5.6\data\ select @@version; -- 5.6.31-log 

to set dynamic variable override cnf or ini file setting, similar to:

set global general_log=1; 

enter image description here

remember datadir, not basedir. may need open viewing of hidden folders on windows see \programdata if datadir points.

and lastly, don't need trick error sql statement. general query log queries.

for screenshot view of it, see this answer. remember, queries. turn off, make copy, delete, turn on, regenerates. don't forget having general log activated in production slows down performance.

also, see answer gryphius.

edit (per question in comments).

changes dynamic variables fleeting if not mirrored in cnf or ini settings. meaning, reset upon mysql restarting.

i don't know way turn off error logging nor want to. errors infrequent , knowledge of them quite important. below should satisfy 3 of 4 curiosities:

show variables '%error%'; show variables '%slow%';  log_error -- string filename  slow_query_log -- set 'on' or 1, 'off' or 0 slow_query_log_file; --- string filename 

then there show variables;

more on slow query log. if set long_query_time high enough, filter out more noise. in seconds, 0 10. , percona article though dated.

select @@long_query_time; +-------------------+ | @@long_query_time | +-------------------+ |         10.000000 | +-------------------+ 

note, can't seem set above set global stmt. appears setting cnf or ini file. can following:

select @@slow_query_log; -- see current value select @@slow_query_log_file; -- see current value (file in datadir) select @@datadir; -- see current value  set global slow_query_log=0; -- turn off -- make backup of move , rename (see note1) folder below datadir set global slow_query_log=1; -- turn on (new empty file created) 

note1: image of file copied, renamed @ note1 point-in-time above. image here.


Comments