Логи MySQL Ubuntu

Если есть какие-то вопросы к MySQL в Ubuntu, то нужно смотреть логи

 

Как это делается...

 

Для начала нужно понять, что есть 3 журнала:

log_error для журнала сообщений об ошибках;
general_log_file для общего файла журнала запросов (если включено general_log);
slow_query_log_file для файла журнала медленных запросов (если включено slow_query_log);

Соответственно, эти опции можно включить на время, но не оставлять на всегда, потому что они жрут ресурсы.

Для начала мы должно понять, а включены ли они у нас:

в терминале вводим:

mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

 

Чтобы узнать путь к журналу ошибок:

mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

 

mysql -e "SELECT @@GLOBAL.log_error"

 

 

Чтобы узнать ошибки MySQL в реальном времени файлы эти читаем:

sudo tail -f $(mysql -Nse "SELECT @@GLOBAL.log_error")

 

Настройка логирования БД

 

Перейдите в файл mysql conf (/etc/mysql/my.cnf) и добавьте следующие строки

Чтобы включить журнал ошибок, добавьте следующее

[mysqld_safe]
log_error=/var/log/mysql/mysql_error.log

[mysqld]
log_error=/var/log/mysql/mysql_error.log

 


Чтобы включить общий журнал запросов, добавьте следующее

general_log_file = /var/log/mysql/mysql.log
general_log = 1


Чтобы включить медленный журнал запросов, добавьте следующее

log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 2
log-queries-not-using-indexes

 

Сохраните файл и перезапустите mysql, используя следующие команды

service mysql restart


Чтобы включить ведение журнала во время выполнения, войдите в клиент mysql (mysql -u root -p) и укажите:

SET GLOBAL general_log = 'ON';
SET GLOBAL slow_query_log = 'ON';
Наконец, одна вещь, которую я хотел бы упомянуть здесь, это то, что я прочитал это в блоге. Спасибо. У меня это работает.

Добавить комментарий


Защитный код
Обновить