IBM Support

[Db2] RUNSTATS コマンドによる統計収集を停止する方法

Question & Answer


Question

RUNSTATS コマンドによる表または索引の統計収集を停止させたい場合、どのようにすればよいでしょうか。

Answer

  1. 停止方法
    SYSIBMADM.SNAPSTMT 管理ビュー (もしくはアプリケーション・スナップショット) で RUNSTATS 実行中のアプリケーション・ハンドル (AGENT_ID) を特定し、その接続を FORCE APPLICATION で切断してください。
    $ db2 connect to <データベース名>
    $ db2 "SELECT AGENT_ID,STMT_OPERATION FROM SYSIBMADM.SNAPSTMT"
    
    AGENT_ID             STMT_OPERATION
    -------------------- --------------------
                    3997 RUNSTATS
    
    $ db2 "force application (3997)"
    DB20000I  FORCE APPLICATION コマンドが正常に完了しました。
    DB21024I  このコマンドは非同期であり、即時に有効にならない場合もあります。
  2. 停止後の対処方法
    更新中の統計情報はロールバックされ、RUNSTATS 実行前の状態に戻ります。
    RUNSTATS を再実行してください。

運用上の考慮点
  • FORCE APPLICATION による処理の中断は非同期ですので、実行直後に処理が停止しない場合があります。適宜 LIST APPLICATIONS SHOW DETAIL コマンドにてモニターしてください。
  • 処理の中断にあまりに長時間かかりハングが疑われる場合や、どうしても即座に停止したい場合、db2_kill にてインスタンスを停止してください。ただし、インスタンス内の全ての処理が強制終了され、データベースの次回始動時にクラッシュ・リカバリーが必要になる可能性があります。

関連情報
[Db2] パスポート・アドバンテージによく寄せられる質問
RUNSTATS コマンド
SNAPSTMT および SNAP_GET_STMT
stmt_operation/operation ステートメント操作 : モニター・エレメント

お問合せ先
技術的な内容に関して、パスポート・アドバンテージの契約のもと Db2 テクニカル・サポートへお問い合わせください。
Db2 テクニカル・サポート

[{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"ARM Category":[{"code":"a8m500000008Pl1AAE","label":"Compiler-\u003EStatistics and DDL"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
26 August 2023

UID

swg21573822