👔
V$SESSIONで本当に見るべき列
V$SESSIONで本当に見るべき列
Oracleの障害対応や性能調査で、V$SESSIONを開くと情報が多すぎて迷うことがあります。
初心者や中堅エンジニアが「とりあえず全部見る」ことで、かえって判断が遅れるケースも少なくありません。
V$SESSIONで最初に注目する列
私が運用で最初にチェックする列は以下です。
-
SID / SERIAL#
セッションの識別。これがないとKillもトレースもできません。 -
USERNAME / PROGRAM
どのユーザー・アプリケーションが使っているか。
トラブルが特定アプリやジョブに偏っていないかを把握できます。 -
STATUS
ACTIVE/INACTIVEの状態確認。
本当に実行中か、待機中かを切り分けます。 -
EVENT
待機イベント。
どこでブロックされているかの最初の手がかりになります。 -
LOGON_TIME
長時間接続しているセッションは、リソースを圧迫していることがあります。
見ても深追いしない列
V$SESSIONには数十列ありますが、初動ではすべて見なくて構いません。
- MACHINE / TERMINAL
- SQL_ID / SQL_CHILD_NUMBER
これらは、必要になった段階で補助的に確認するだけで十分です。
初動での確認手順
- V$SESSIONを開き、上記列を確認
- 異常なセッションや待機イベントをメモ
- OS負荷・アラートログと照合
ポイント
- 初動は「見るだけ」
- 触らない・変更しない
- 情報を残すことを最優先
まとめ
- V$SESSIONは情報が多すぎるが、見るべき列は限られる
- 初動では、SID・USERNAME・STATUS・EVENT・LOGON_TIMEを優先
- 検証や対応は、この情報をベースに進める
正しい列を最初に押さえるだけで、障害対応の精度と速度が格段に上がります。
Discussion