Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
mysqlサーバーは、実行されたクエリの記録を保持しますか?保持している場合、それらのクエリを取得することは可能ですか?
ありがとう。
実行されたすべてのクエリの記録を保持する場合は、一般クエリログまたは低速クエリログのいずれかを有効にして、しきい値を0秒に設定できます(0秒を超えるクエリはすべてログに記録されます)。
もう1つのオプションは、バイナリログです。ただし、バイナリログは、データを変更しない、SELECTまたは変更しないクエリの記録を保持SHOWしません。
SELECT
SHOW
これらのログは、トラフィックのあるサーバーではかなり速く大きくなることに注意してください。また、両方にパスワードが含まれている可能性があるため、許可されていない目から保護する必要があります。
すべてのクエリをプレーンテキストでログに記録する一般クエリログを使用できます。
これは、開発環境でのみ有効になっています。オフピーク時に本番サーバーで一時的にこれをオンにしても問題はありません。
遅いクエリを探している場合は、遅いクエリログを使用することもできます。
クライアントアプリとRDBMS自体の間にあるMySQLプロキシを使用できます。
http://forge.mysql.com/wiki/MySQL_Proxy
オンラインクエリを表示でき、ルールに基づいてクエリを書き直すこともできます。
別のオプションがあります-プロファイラーを使用します。
例:http ://www.jetprofiler.com/