FORCE APPLICATION コマンド (ADMIN_CMD プロシージャーを使用)
FORCE APPLICATION コマンドは、システムからローカルまたはリモートのユーザーやアプリケーションを強制終了し、サーバー上での保守を可能にします。
重要: 割り込みが許されない操作 (例えば、RESTORE DATABASE) を強制終了する場合は、その操作を再び実行して正常終了しなければデータベースは使用可能になりません。
有効範囲
このコマンドは、$HOME/sqllib/db2nodes.cfg ファイルにリストされているすべてのデータベース・パーティションに影響を与えます。
パーティション・データベース環境では、このコマンドを発行するのは、 強制終了するアプリケーションのコーディネーター・データベース・パーティションからでなくてもかまいません。 パーティション・データベース環境ではどのデータベース・パーティション・サーバーからでも発行できます。
許可
以下の権限のいずれか。
- SYSADM
- SYSCTRL
- SYSMAINT
必要な接続
データベース
コマンド構文
コマンド・パラメーター
- 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 で戻されます。
