指定された秒数が経過した後にプロセス ID を強制終了する MySQL スロー クエリ キラーがあり、正常に動作します。ただし、非常に遅いクエリ全体も通知で確認したいと考えています。
問題は、mysqladmin -v processlist|grep process_id
動作するはずですが、改行を含むクエリを切り捨てることです。
SELECT * FROM table WHERE x=y {
... stuff
};
ここで内容が切り捨てられ、クエリが切り詰められます。(私は DBA ではないので、構文的に正しくない可能性があることは理解していますが、アプリケーションで時々処理しなければならない種類のクエリ フローの例を示したかっただけです。形式について文句を言わないでください。 、それは私の決定ではなく、私の管理下にもありません。)
でクエリを実行するinformation_schema
とこれが解決すると思いますが、そのデータベースに対するクエリがパフォーマンスに影響を与えることが多いため、チームはこれを実行したくありません。これにアプローチするより良い方法はありmysqladmin
ますか?