読者です 読者をやめる 読者になる 読者になる

ログってなんぼ

日々のメモです

MySQL : 確実にn秒以上かかるクエリをSLEEPを使って発行する

MySQL :: MySQL 5.6 リファレンスマニュアル :: 5.2.5 スロークエリーログ

slow query log関連でメモ

long_query_time=0とすることで全SQLのログが指定したファイルにslow-logとして出力されますが

実際の値をlong_query_time=2などと設定した後MySQLを再起動して、その後何も確認しないというのはやはりどうもスッキリしません。

ただ、サービス開始時にいきなり2秒Overのクエリが発生するはずもなく・・・・

というわけで、3秒かかるクエリを作成して、slow-logファイルに出力されるかだけ確認しておきます。

mysql> select sleep(3);
+----------+
| sleep(3) |
+----------+
|        0 |
+----------+
1 row in set (3.05 sec)

slow-logファイル

# Time: 2016-08-23T07:44:21.226436Z
# User@Host: root[root] @ localhost []  Id: 76161
# Query_time: 3.053074  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use sebastian;
SET timestamp=1471938261;
select sleep(3);

やはり実際に目で見て確認できると安心です