0

やっている

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE = "executing";

Id現在実行中のすべてのスレッドの Id 番号である列が含まれています。今私のMySQL手順では、最初に、それを実行しているスレッドの ID を知りたいと思っています。プロシージャを実行しているスレッドの ID を返すクエリはどれですか?

第二に、私のアプリケーションのクエリは非常に長時間実行されているため、それを知りたいです。新しいリクエストを受け取るとすぐに、アプリケーションがすでに実行中のクエリをキャンセルするプロセスを自動化したいと考えていますKill query someID。このためにはID、すでに実行中の手順を知る必要があります。Kill queryコマンドは安定性に影響しますか? documentationによると、フラグを設定するだけで接続が損なわれていないため、安全に見えます。

4

1 に答える 1

5

CONNECTION_ID() 関数を使用します。

http://dev.mysql.com/doc/refman/5.5/en/information-functions.html#function_connection-id

于 2013-07-03T13:27:48.330 に答える