Как включить журнал запросов MySQL (см. все SQL-запросы, когда они прибывают),

При разработке приложения, которое использует MySQL, может быть полезно наблюдать в режиме реального времени, какие запросы выполняются.

Как видеть все входящие запросы MySQL?

3
задан 6 June 2017 в 05:50

3 ответа

От имени пользователя root отредактируйте /etc/mysql/my.cnf и добавьте этот абзац внизу:

[mysqld]
general_log=on
general_log_file=/var/log/mysql/query.log

В роли пользователя root выполните следующие команды:

service mysql stop
service mysql start

Затем просмотрите журнал: [ 116]

tail -f /var/log/mysql/query.log

Обратите внимание, что этот параметр замедляет работу MySQL примерно на 15%, поэтому удаляйте или комментируйте абзац (затем перезапускайте), когда он вам больше не нужен.

8
ответ дан 1 December 2019 в 13:16

Выполните эту команду с помощью сценария оболочки Linux

mysqladmin-uroot-p'mysql_password '-i 2 processlist

Генерирует processlist и автоматически обновит на каждом минуты

0
ответ дан 1 December 2019 в 13:16

Хотя ответ Николя Рауля верен, обратите внимание, что начиная с mysql-server-5.7 файл /etc/mysql/my.cnf создается из конфигурации файлы как в /etc/mysql/conf.d, так и в /etc/mysql/mysqld.conf.d.

Поэтому, чтобы решение работало, необходимо изменить файл: /etc/mysql/mysqld.conf.d/mysqld.cnf. Итак, строки:

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

Должны быть раскомментированы, файл сохранен и служба перезапущена с помощью sudo service mysql restart.

В противном случае вы можете столкнуться с ошибками.

1
ответ дан 27 April 2020 в 07:00

Другие вопросы по тегам:

Похожие вопросы: