

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
pmonとは?
pmonは Oracle Database のバックグラウンドプロセスの一つです。ここでは初心者にもわかるように、気軽に読み進められる説明をします。
まず、pmonは「Process Monitor」の略で、データベースが正しく動くための監視役を担当します。データベースにはいくつもの背景プロセスが走っていますが、pmonはその中でもとても大事な役割を担っています。
pmonはセッションの終了後に残ってしまうリソースを解放したり、トランザクションの管理を整えたり、障害発生時に自動的に回復を試みたりします。具体的には、失敗したユーザーセッションの後処理、ロックの解放、バックグラウンドのプロセスの再起動などを行います。
pmonの主な役割
以下の表は、pmonの主な役割と動作タイミングをまとめたものです。
| 説明 | |
|---|---|
| PMONの主な役割 | セッションの回収、リソースの解放、死活監視 |
| 動作する場面 | セッション異常終了時、バックグラウンドエラー時、インスタンスの再起動時など |
| PMONとSMONの違い | PMONは個々のセッションやプロセスを監視・清掃、SMONはシステム全体の回復を担当 |
PMONを確認する方法
Linux/Unix 環境では、ps -ef | grep pmon というコマンドで実行中のPMONを確認できます。Oracleのインストールディレクトリが環境変数に入っていれば、PMONのプロセス名の一部として表示されます。
Windows 環境の場合は、タスクマネージャーの「プロセス」一覧で「pmon」または「oracle」という名前のプロセスが動作しているかを確認します。
また、データベースの管理者向けには、アラートログや ORM などの監視ツールを使ってPMONの状態を確認する方法もあります。これらの情報を見て、異常がないかを日常的にチェックすることが大切です。
もしPMONが正常に動作していない場合には、データベース全体の機能にも影響が出ることがあります。最初の対応としては、ログの確認、同時に走っているプロセスの状況確認、データベースの再起動を検討します。ただし再起動は慎重に行い、停止手順に従って実施してください。
よくある誤解として、「PMONは常に動きっぱなしだから、特別な管理は不要」という考えがあります。実際にはPMONを含むバックグラウンドプロセスの健全性を保つことが、データベースの安定運用に直結します。
まとめ
pmonは、データベースの安定運用と突発的なトラブル時の自動回復を支える重要なバックグラウンドプロセスです。日常の監視とログ確認を通じて、適切に管理していきましょう。
起動と後処理の流れ
データベースが起動するとき、PMONは他のバックグラウンドプロセスと協力して初期化を進めます。セッションが終了した後には、PMONがそのセッションが使っていたリソースを回収し、次の処理のためにクリーンアップします。
また、障害発生時にはPMONが自動的に復旧処理を開始しますが、これは完全に自動というより監視役の意味合いが強く、完全な自己修復を期待するわけではありません。適切な手動の介入が必要になることもあります。
初心者のための3つのポイント
1) pmonが動作しているかを慣れるまで、コマンドやログを見る癖をつける。2) PMONとSMONの違いを混同しないよう覚える。3) 日常の監視ツールを使って定期的に状態を確認する。
データベースの運用を安定させるためには、PMONの役割を理解することが第一歩です。普段は気付きにくい存在ですが、トラブル時には真っ先に動作してくれる重要なプロセスです。
pmonの同意語
- PMON
- Oracleデータベースのバックグラウンドプロセスのひとつ。クライアント接続の異常終了後の後処理や資源の解放、セッション回復を担当します。
- Process Monitor
- PMONの英語表記。Oracleデータベースのバックグラウンドプロセスを指す表現です。
- プロセスモニター
- PMONの日本語訳の一つ。データベースのプロセスを監視・回復する役割を示します。
- PMONプロセス
- PMONを指す別称。Oracleデータベース内の特定のバックグラウンドプロセスを意味します。
- バックグラウンド・プロセス
- データベースが常駐して動作する補助的なプロセスの総称。PMONを含みます。
- Oracle PMON
- Oracleデータベースに内包されるPMONプロセスを指す表現です。
- プロセス監視プロセス
- PMONが担う“監視と回復”の機能を分かりやすく表現した言い換えです。
- セッション回復モニター
- PMONの核となる機能のひとつ。異常終了したセッションを回復する役割を表します。
- セッション回復プロセス
- 異常終了セッションの回復を担当するPMONの機能を指す表現です。
pmonの対義語・反対語
- 放置
- 監視・保守を意図的に行わず、問題が起きても対処しない状態。PMON の自動監視・回復機能の逆の行動として考える概念。
- 無視
- アラートやエラー通知を受け取らず、対処を放棄する行為。問題の早期検知を妨げる対義語。
- 停止
- 監視機能を停止させ、健全性チェックや自動回復を行わない状態。
- 手動介入
- 自動処理を使わず、問題発生時に人が介入して対処する状態。PMON の自動運用の反対イメージ。
- 故障見逃し
- 発生した故障を認識せず、長期的な不具合を放置する状態。
- アラート無反応
- 適切なアラート通知を出しても反応せず、対応が遅れる状態。
- クリーンアップ未実施
- 不要リソースの解放・整理を行わず、システムの健全性を損なう状態。
- 回復なし
- 自動的な回復やリカバリを行わず、問題をそのまま放置する状態。
- プロセス強制終了
- 問題解決のために対象プロセスを即座に終了させ、PMON 的な回復処理を介さない対応。
pmonの共起語
- SMON
- システムモニタプロセス。インスタンス起動時の初期化やクラッシュリカバリを担当します。
- LGWR
- ログライター。オンラインリドゥログをデータファイルに書き込み、障害時のリカバリを支えます。
- DBWR
- データベースライター。変更済みのデータブロックをデータファイルへ物理的に書き込みます。
- CKPT
- チェックポイントプロセス。一定タイミングでデータの整合性を保つための更新を指示します。
- ARCH
- アーカイブ・プロセス。オンラインリドゥログをアーカイブ先へコピーします。
- ARCHIVELOG
- アーカイブ・ログモードのこと。リドゥログをアーカイブして障害時のリカバリを可能にします。
- RAC
- Real Application Clusters。複数ノードで1つのデータベースを共有するクラスタ機能。
- Oracle
- Oracle社のデータベース製品。データベース管理システムの総称として使われます。
- インスタンス
- Oracleデータベースを動かす実行環境。メモリ構成とバックグラウンドプロセスを含みます。
- バックグラウンドプロセス
- PMONを含む、データベースを継続的に支える内部プロセス群。
- セッション
- データベースへ接続して作業する利用者単位。PMONはセッションの監視・回収を行います。
- リカバリ
- 障害後のデータ復旧処理。SMONとPMONなどが関連タスクを実行します。
- オンラインリドゥログ
- 現在使用中のリドゥログファイル。LGWRがここへ書き込みます。
- アーカイブ・ログ
- アーカイブ対象のリドゥログ。ARCHがアーカイブします。
- ログバッファ
- メモリ上のリドゥログの書き込み待ち領域。LGWRがこの内容をディスクへ書き込みます。
- データベース
- データを格納・管理するシステム。PMONを含む多くのバックグラウンドプロセスが動作します。
- サーバープロセス
- クライアントとデータベース間で処理を実行するプロセス。PMONはこれらを監視します。
pmonの関連用語
- PMON
- プロセスモニター。Oracleデータベースのバックグラウンドプロセスの一つで、ユーザーセッションが切断された場合のクリーンアップや資源の解放、失敗したプロセスの回収・再起動を担当します。
- SMON
- システムモニター。インスタンス起動時のリカバリを実行し、データの整合性を保つほか、未使用セグメントの回収や一時的な領域のクリーンアップを行います。
- LGWR
- ログライター。Redoログファイルへの書き込みをディスクへ行い、クラッシュ後のリカバリをサポートします。
- CKPT
- チェックポイント。データファイルのデータヘッダ更新と関連する制御ファイル更新を行い、復旧時の作業を最小化します。
- DBWR
- データベースライター。バッファキャッシュのダーティブロックをデータファイルへ書き出します。
- ARCn
- アーカイバ(ARC)プロセス。Redoログをアーカイブ領域へ書き出す役割を担います。nはARC0, ARC1などを指します。
- RECO
- リコ(分散回復)。分散トランザクションの失敗時に回復処理を行い、他のノードとの整合性を保ちます。
- MMON
- マネージャビリティ・モニター。メモリ使用状況やシステムパラメータの動作状況を監視・収集します。
- MMAN
- メモリ・マネージャ。SGAのメモリ配分を自動で管理・調整し、全体のメモリ使用を最適化します。
- DMON
- ディストリビューション・モニター。RAC環境でグローバルエンキューの状態を監視・管理します(DMON/LMON/LMDの組み合わせでクラスタ資源を調整します)。
- LMON
- グローバルエンキュー・モニター。RAC環境でグローバルエンキューの状況を監視します。



















