MySQL 5.1 リファレンスマニュアル :: 12 SQL ステートメント構文 :: 12.5 データベース管理ステートメント :: 12.5.5 その他の管理ステートメント :: 12.5.5.3 KILL 構文
« 12.5.5.2 FLUSH 構文

12.5.5.4 LOAD INDEX INTO CACHE 構文 »
Section Navigation      [Toggle]
  • 12.5.5 その他の管理ステートメント
  • 12.5.5.1 CACHE INDEX 構文
  • 12.5.5.2 FLUSH 構文
  • 12.5.5.3 KILL 構文
  • 12.5.5.4 LOAD INDEX INTO CACHE 構文
  • 12.5.5.5 RESET 構文

12.5.5.3. KILL 構文

KILL [CONNECTION | QUERY] thread_id

mysqld への各接続は別々のスレッド内で起動します。どのスレッドが SHOW PROCESSLIST ステートメントを利用し、スレッドを停止させるのかを、KILL thread_id ステートメントを利用して確認する事ができます。

KILL は任意の CONNECTION か QUERY 修飾子を許容します。

  • KILL CONNECTION は修飾子を持たない KILL と同じです。それは thread_id と関連している接続を終了します。

  • KILL QUERY は現在接続が実行中であるステートメントを終了させますが、その接続自体には手をつけずそのまま残しておきます。

もし PROCESS 権限を持っていれば、全てのスレッドを見る事ができます。もし SUPER 権限を持っていれば、全てのスレッドとステートメントを停止する事ができます。そうでなければ、自分自身のスレッドとステートメントのみ確認、停止させる事ができます。

mysqladmin processlist と mysqladmin kill コマンドを利用して、スレッドを検査、停止する事もできます。

注意:埋め込みサーバは、ホスト アプリケーションのスレッド内ではほとんど起動しないので、KILL と埋め込み MySQL サーバ ライブラリを一緒に利用する事はできません。それは、それ自身の接続スレッドは作成しません。

KILL を利用する時、スレッド固有のキル フラッグがスレッドに設定されます。ほとんどの場合、キル フラッグは特定のインターバルでしか確認されないので、スレッドが停止するまでに少し時間がかかります。

  • SELECT,ORDER BY そして GROUP BY ループ内では、フラッグは行のブロックを読み込んだ後に確認されます。もしキル フラッグが設定されると、ステートメントは異常終了します。

  • ALTER TABLE の最中に、行の各ブロックが元テーブルから読み込まれる前にキル フラッグが確認されます。もしキル フラッグが設定されると、ステートメントは異常終了し、テンポラリ テーブルは削除されます。

  • UPDATE や DELETE 操作の最中に、各ブロックの読み込みや、行の各更新や削除の後でキル フラッグが確認されます。もしキル フラッグが設定されると、ステートメントは異常終了します。もしトランザクションを利用していなければ、変更はロールバックされない事に注意してください。

  • GET_LOCK() は NULL を異常終了し、返します。

  • INSERT DELAYED スレッドはメモリ内に持っている全ての行をすばやくフラッシュ(挿入)します。

  • もしスレッドがテーブル ロック ハンドラ内にあれば、(状態: Locked) テーブルロックは迅速に異常終了します。

  • もしスレッドが書き込みコール内でフリー ディスク スペースを待っていたら、その書き込みは 「disk full」 エラー メッセージを利用して異常終了されます。

  • 警告: MyISAM テーブル上で REPAIR TABLE や OPTIMIZE TABLE 操作を終了させると、テーブルが破損され、利用不可能になります。それを最適化、または修復するまで(割り込み無しで)、そのようなテーブルへの書き込みや読み込みは失敗します。

Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved. Legal Notices
Top / Previous / Next / Up / Table of Contents
© 2010, Oracle Corporation and/or its affiliates