FORCE APPLICATION コマンド (ADMIN_CMD プロシージャーを使用)

FORCE APPLICATION コマンドは、システムからローカルまたはリモートのユーザーやアプリケーションを強制終了し、サーバー上での保守を可能にします。

重要: 割り込みが許されない操作 (例えば、RESTORE DATABASE) を強制終了する場合は、その操作を再び実行して正常終了しなければデータベースは使用可能になりません。

有効範囲

このコマンドは、$HOME/sqllib/db2nodes.cfg ファイルにリストされているすべてのデータベース・パーティションに影響を与えます。

パーティション・データベース環境では、このコマンドを発行するのは、 強制終了するアプリケーションのコーディネーター・データベース・パーティションからでなくてもかまいません。 パーティション・データベース環境ではどのデータベース・パーティション・サーバーからでも発行できます。

許可

以下の権限のいずれか。
  • SYSADM
  • SYSCTRL
  • SYSMAINT

必要な接続

データベース

コマンド構文

構文図を読む構文図をスキップするFORCE APPLICATIONALL(,application-handle)MODE ASYNC

コマンド・パラメーター

FORCE APPLICATION
ALL
すべてのアプリケーションがデータベース・サーバーから切断されます。これにより、ADMIN_CMD プロシージャーが実行されている接続がクローズされることがあります。 その場合、強制終了オペレーションが正常に完了した時点で、ADMIN_CMD プロシージャーについては SQL1224N エラーが戻されることになります。
application-handle
エージェントの終了を指定します。 LIST APPLICATIONS コマンドを使用して値をリストします。
MODE ASYNC
コマンドは、指定したすべてのユーザーが終了するのを待たずに戻ってきます。 コマンドは、機能を正常に発行するか、 またはエラー (無効な構文などの) を発見するとすぐに戻ります。

現在サポートしているモードはこのモードだけです。

次の例は、application-handle の値が 41408 と 55458 の 2 つのユーザーをデータベースから強制的に切断します。
CALL SYSPROC.ADMIN_CMD( 'force application ( 41408, 55458 )' )

使用上の注意

データベース・マネージャーは、db2start を必要とせずに、 後続のデータベース・マネージャー操作を処理できるようにするため、アクティブなままになっています。

データベースの整合性を確保するため、終了できるのは、 アイドル中のユーザー、または割り込み可能なデータベース操作を実行中のユーザーだけです。

以下のタイプのユーザーおよびアプリケーションは、強制終了できません。
  • データベースを作成しているユーザー
  • システム・アプリケーション
これらのタイプのユーザーおよびアプリケーションを正常に強制終了するには、データベースの非活動化とインスタンスの再始動のいずれかまたは両方を行う必要があります。

FORCE APPLICATION が出された後も、データベースはまだ接続要求を受諾します。 すべてのユーザーを完全に強制終了するためには、 追加の FORCE が必要になる場合があります。

コマンドの実行状況は、CALL ステートメントからの結果である SQLCA で戻されます。