内容へ移動
fl8 Wiki
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
現在位置:
Dokuwiki.fl8.jp
»
02_freebsd
»
04_database
»
01_mysql
»
MySQL - slow log
トレース:
02_freebsd:04_database:01_mysql:slow_log
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== MySQL - slow log ====== $vi my.cnfで以下を記述 long_query_time=3 log-slow-queries=/var/log/slow.log これにより3秒以上処理に時間のかかるクエリの特定が可能(long_query_timeで指定)なのでそのクエリを見直す。 これで動いてるプロセスを見ることもできる。 <code console> mysql > show full processlist; mysql> SHOW PROCESSLIST; mysql> SHOW FULL PROCESSLIST; </code> 以下がイコールなので、下だとwhereが使える <code console> mysql> SELECT * FROM information_schema.PROCESSLIST where COMMAND='Query'; </code> ====== オンラインで変更 ====== ===== 5.0 ===== <code> mysql> set global log-slow-queries = '/tmp/mysql-slow.log'; mysql> set global long_query_time = 1; mysql> set global log_queries_not_using_indexes=0; </code> long_query_timeで設定した時間よりも短い結果で返ってくるクエリが保存されていた 原因はlog_queries_not_using_indexesがONになっていた。 これがONになっているとインデックスを使っていないクエリが保存される ===== 5.1以降 ===== <code> mysql> set global slow_query_log_file = '/tmp/mysql-slow.log'; mysql> set global long_query_time = 5; mysql> set global slow_query_log = ON; </code> ==== 現在の値確認 ==== <code> mysql> SHOW VARIABLES LIKE 'slow_query_%'; +---------------------+--------------------------------------+ | Variable_name | Value | +---------------------+--------------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /var/lib/mysql/09e382d8d897-slow.log | +---------------------+--------------------------------------+ 2 rows in set (0.00 sec) mysql> SHOW VARIABLES LIKE 'long_query_time'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 row in set (0.00 sec) </code> {{tag>mysql}}
02_freebsd/04_database/01_mysql/slow_log.txt
· 最終更新: 2025/04/22 13:41 by
matsui
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ