Журнал содержит информацию о подключениях клиентов, запросах и другого рода событиях. Это файл очень полезен для отладки, оптимизации систем.
# С помощью этого запроса можно увидеть состояние системных переменных. mysql> show variables where Variable_name in ('version', 'log', 'general_log', 'general_log_file', 'log_output'); +------------------+---------------------------------------+ | Variable_name | Value | +------------------+---------------------------------------+ | general_log | OFF | | general_log_file | /usr/local/mysql/data/datacharmer.log | | log | OFF | | log_output | FILE | | version | 5.1.25-rc-community-log | +------------------+---------------------------------------+ # Показать значения всех переменных для логов, плюс и медленные запросы mysql> SHOW VARIABLES WHERE Variable_name LIKE 'log%' OR Variable_name LIKE 'general_log%' OR Variable_name LIKE 'long%' OR Variable_name LIKE '%slow%' OR Variable_name = 'version' ;
Параметр log_output может принимать значения: FILE или TABLE. Возможность вести журнал событий в таблице появилась с MySQL 5.1.
Изменить значения переменных можно как в файлах конфигурации my.cnf так и напрямую, например:
mysql> SET GLOBAL general_log_file='/tmp/mysql/general.log'; mysql> SET GLOBAL general_log=ON; # Переключение на таблицу mysql> set global log_output='TABLE'; # Запросы из таблицы mysql> select count(*) from mysql.general_log; # Очищаем таблицу логов mysql> truncate mysql.general_log; # Включение журналирования одновременно как в таблицу, так и в файл mysql> set global log_output='TABLE,FILE'; # Выключение журналирования и очищения таблицы mysql> set sql_log_off=0; mysql> truncate mysql.general_log;
Материалы по данному вопросу: