tail -f に適した、より便利な MySQL クエリ ログ

tail -f に適した、より便利な MySQL クエリ ログ

Web アプリケーションと MySQL クエリをデバッグするために、MySQL クエリ ログを有効にしました。ただし、これは tail や grep を実行するのにあまり適した形式ではありません。理想的には、特定のユーザーからのクエリ、または特定のデータベースへのクエリのみを表示できるようにしたいと思います。MySQL クエリ ログが各行にデータベースまたはユーザーを出力すれば、それを grep できます。特定の日付に何が起こったかを確認したい場合もありますが、MySQL クエリ ログは各行に日時を出力しないため、これは困難です。

MySQL クエリ ログを tail/grep などでより適切に処理する方法はありますか?

答え1

おそらく mk-query-digest を使うべきでしょう。これは非常に強力です。

http://www.maatkit.org/doc/mk-query-digest.html

答え2

あなたがしようとしていること、つまり単一のユーザーのクエリをログに記録することは、MySQL プロキシ基本的に、これは MySQL サーバーとクライアントの間に配置できるサービスです。設定した基準に基づいてデータをログに記録したり操作したりする方法に関するコード サンプルが多数あります。

とにかく、これを行うためのツールは知りません。必要なのは、mysql ログ パーサー ライブラリを見つけて、そのライブラリを使用して必要なデータを抽出するスクリプトを作成することです。

関連情報