Я следовал инструкциям здесь: http://crazytoon.com/2007/07/23/mysql-changing-runtime-variables-with-out-restarting-mysql-server/, но это, кажется, только устанавливает порог.
Я должен сделать что-либо еще, любят, устанавливает filepath?
Согласно документам MySQL
If no file_name value is given for --log-slow-queries, the default name is host_name-slow.log. The server creates the file in the data directory unless an absolute path name is given to specify a different directory.
Выполнение
SHOW VARIABLES
не указывает ни на какой путь файла журнала, и я не вижу файла журнала медленного запроса на своем сервере...
Править
Похож я использую серверную версию 5.0.77, таким образом, я должен был сделать:
SET GLOBAL log_slow_queries = 1;
но я добираюсь: ОШИБКА 1238 (HY000): Переменная 'log_slow_queries' является переменной только для чтения
Я предполагаю, что испытываю необходимость для перезапуска сервера, и log_slow_queries установили в моей конфигурации?
Руководство по MySQL - файл журнала медленных запросов
Здесь утверждается, что вы можно выполнить следующее, чтобы установить файл медленного журнала (начиная с версии 5.1.6):
set global slow_query_log_file = 'path';
Переменная slow_query_log просто контролирует, включен он или нет.
Попробуйте УСТАНОВИТЬ ГЛОБАЛЬНЫЙ slow_query_log = 'ON';
и, возможно, FLUSH LOGS;
Предполагается, что вы используете MySQL 5.1 или более позднюю версию. Если вы используете более раннюю версию, вам потребуется перезапустить сервер. Это задокументировано в Руководстве по MySQL. Журнал можно настроить либо в конфигурационном файле, либо в командной строке.
Я думаю, что проблема в том, чтобы убедиться, что сервер MySQL имеет права на файл и может его редактировать.
Если вы можете получить доступ к файлу, то вы можете попробовать настройку:
SET GLOBAL slow_query_log = 1;
Если нет, вы всегда можете «перезагрузить» сервер после изменения файла конфигурации. В Linux его обычно /etc/init.d/mysql reload
Эти работают
SET GLOBAL LOG_SLOW_TIME = 1;
SET GLOBAL LOG_QUERIES_NOT_USING_INDEXES = ON;
Не работает моя установка 5.1.42
SET GLOBAL LOG_SLOW_QUERIES = ON;
SET GLOBAL SLOW_QUERY_LOG = ON;
set @@global.log_slow_queries=1;
http://bugs.mysql.com/bug.php?id=32565
Похоже, лучший способ сделать это - установить log_slow_time очень high, таким образом «отключая» журнал медленных запросов. Уменьшите значение log_slow_time, чтобы включить его. Используйте тот же прием (установите значение OFF) для log_queries_not_using_indexes.