MySQLデータベースサーバーはMySQLの遅いクエリログで設定したしきい値よりも実行時間が長いクエリをログとしてためることができ、遅いアプリケーションに関連する問題のトラブルシュートに役立てられます。MySQLデータベースクエリのしきい値は一秒とみなされ、実行時間が1秒を超過したクエリは「遅い」として登録されます。
Site24x7のログ管理ではデフォルトでMySQLの遅いクエリの監視をサポートしています。ホスト、クエリ時間、ロック時間、送信列、調査列といった項目でログが分類されるため、これらログを用いて迅速にトラブルシュートを行えます。また、ダッシュボードのクエリ時間、ロック時間、調査列、リターン列といったパラメーターの上位10の遅いクエリを表示できます。
MySQLデータベースがインストールされているマシンにログインします。Linuxマシンならターミナル、Windowsマシンならコマンドプロンプトを開き、次のコマンドを実行します。
MySQLバージョン5.1.6以上の場合:
MySQLバージョン5.1.6未満の場合:
/etc/my.cnfファイルを編集して、次の列を[mysqld]項目に追加します。
viコマンドを用いてターミナルから直接ファイルを編集できます。
これはSite24x7で、次のサンプルログに基づきMySQLの遅いクエリログを解析するために定義されたデフォルトのログパターンです。
# User@Host: test[test] @ [192.168.1.2]<NewLine># Query_time: 31.896695 Lock_time: 0.000065 Rows_sent: 1023 Rows_examined: 196182<NewLine>use db100db;<NewLine>SET timestamp=1487758318;<NewLine>select USER_ID, EMAIL_ID from USER_ACCOUNT where USER_ID IN ( select USER_ID from USER_MAPPER where ID IN ( select RESOURCEID from appdetails where environment regexp '(.*)Microsoft Windows NT 5.2|Microsoft Windows NT 5.1|Microsoft Windows NT 5.0|Microsoft Windows NT 6.0(.*)'));
# User@Host: test[test] @ [192.168.1.2]<NewLine># Query_time: 31.896695 Lock_time: 0.000065 Rows_sent: 1000 Rows_examined: 196182<NewLine>use db100db;<NewLine>SET timestamp=1487758318;<NewLine>select USER_ID, EMAIL_ID from USER_ACCOUNT where USER_ID IN ( select USER_ID from USER_MAPPER where ID IN ( select RESOURCEID from appdetails where environment regexp '(.*)Microsoft Windows NT 5.2|Microsoft Windows NT 5.1|Microsoft Windows NT 5.0|Microsoft Windows NT 6.0(.*)'));
# User@Host: test[test] @ [192.168.1.2]<NewLine># Query_time: 31.896695 Lock_time: 0.000065 Rows_sent: 560 Rows_examined: 196182<NewLine>use db100db;<NewLine>SET timestamp=1487758318;<NewLine>select USER_ID, EMAIL_ID from USER_ACCOUNT where USER_ID IN ( select USER_ID from USER_MAPPER where ID IN ( select RESOURCEID from appdetails where environment regexp '(.*)Microsoft Windows NT 5.2|Microsoft Windows NT 5.1|Microsoft Windows NT 5.0|Microsoft Windows NT 6.0(.*)'));
上記のサンプルログは次の項目で分けられています。それら項目から各値が取得されSite24x7にアップロードされます。
項目名 | 項目値 |
---|---|
ユーザー | test[test] |
ホスト | 192.168.1.2 |
クエリ時間 | 31.896695 |
ロック時間 | 0.000065 |
送信列 | 1023 |
調査列 | 196182 |
使用データベース | 100db |
タイムスタンプ | 1487758318 |
クエリ | select USER_ID, EMAIL_ID from USER_ACCOUNT where USER_ID IN ( select USER_ID from USER_MAPPER where ID IN ( select RESOURCEID from appdetails where environment regexp '(.*)Microsoft Windows NT 5.2 |Microsoft Windows NT 5.1|Microsoft Windows NT 5.0|Microsoft Windows NT 6.0(.*)')) |