「Mysql/slow.log設定」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→設定方法(mysql 5.1以降(cnf出ない場合) |
(→設定方法(mysql 5.1以降(cnf出ない場合) |
||
行17: | 行17: | ||
==設定方法(mysql 5.1以降(cnf出ない場合== | ==設定方法(mysql 5.1以降(cnf出ない場合== | ||
mysql> SET GLOBAL slow_query_log=ON; | mysql> SET GLOBAL slow_query_log=ON; | ||
− | mysql> SET GLOBAL slow_query_log_file='/var/log/mysql-slow.log'; | + | mysql> SET GLOBAL slow_query_log_file='/var/log/mysql-slow.log'; #ダメな場合は下の行を試してみる |
+ | mysql> SET GLOBAL slow_query_log_file='/var/lib/mysql/mysql-slow.log'; | ||
mysql> SET GLOBAL long_query_time=5; | mysql> SET GLOBAL long_query_time=5; | ||
2015年7月28日 (火) 06:33時点における版
設定方法(mysql 5.1以前
- rootでログイン
- /etc/my.cnf
[mysqld] long_query_time=1 # x秒より遅いSQLのみログに追記 # 追加 log-slow-queries=/var/log/slow.log # 追加 long_query_time=0.1
- /var/log/slow.logファイルをmysql:mysqlで生成
- mysql再起動
設定方法(mysql 5.1以降
- /etc/my.cnf
slow_query_log=ON slow_query_log_file=/var/log/mysql-slow.log
- /var/log/mysql-slow.logファイルをmysql:mysqlで生成
設定方法(mysql 5.1以降(cnf出ない場合
mysql> SET GLOBAL slow_query_log=ON; mysql> SET GLOBAL slow_query_log_file='/var/log/mysql-slow.log'; #ダメな場合は下の行を試してみる mysql> SET GLOBAL slow_query_log_file='/var/lib/mysql/mysql-slow.log'; mysql> SET GLOBAL long_query_time=5;
slowlogの集計
mysqldumpslow -s t /var/log/mysql-slow.log
動的にsqlログを取得
- まずは現状設定確認
mysql > show global variables like '%query%';
- 変更する
mysql > set global slow_query_log = 1; mysql > set global slow_query_log_file = '/var/log/mysql-slow.log'; mysql > set global long_query_time = 3;
- 元に戻しておく