Oracle Database入門(1) - インスタンスの概念
これは自分自身のためのメモです。
インフラ担当の私としては、基本はOSとバックアップ。
Oracleが含まれる場合は「Oracle DatabaseソフトウェアのインストールとPSR(パッチセットリリース)の適用まで」を範囲としていた。
アプリケーションの担当者がOracleインスタンスを作成したら、それをフェールオーバーするためのクラスタ構築部分は私の担当範囲だった。
しかし今回はこんなところまで含まれている。
・DBの無停止バックアップ
・Oracle Database物理設計
・今後の拡張性、性能向上の検討
つまり今回求められているのはOracle DatabaseのDBAです。
と言うわけでこの一週間くらい、Oracleの入門書を読んだり、オラクル社のサイトの資料を読んだり、それはもう勉強の日々。
Oracleで最初にぶつかるのが、インスタンスとかデータベースって用語の概念がわからない。
で、調べてみた。
(写真1)Oracle Databaseインスタンスの概念

インスタンスとは共有メモリ領域SGAと、データベースを参照・更新するためのサーバアプリケーションの実体であるバックグラウンドプロセス群からできている。
SGAはデータベースバッファキャッシュ、REDOログバッファ、共有プールで構成される。
プロセス群はDBWn、LGWR、PMON、SMON、CKPTで構成される。
データベースバッファキャッシュは物理ファイルから読み込まれたデータや、アプリケーションによって追加・変更・削除されたデータが一時的に保持されるメモリ上の領域。
REDOログバッファはデータの追加・変更・削除の履歴情報が一時的に保持されるメモリ上の領域。
バックグラウンドプロセスのDBWn(データベースライター)により、データベースバッファキャッシュの内容が、データファイルに物理的に書き込まれる。
同じくバックグラウンドプロセスのLGWR(ログライター)により、REDOログファイルバッファの内容がオンラインREDOログファイルに書き込まれる。
データファイルやREDOログファイルが書き込まれるタイミングは今後の課題とします。
次回は表・表領域の概念とデータファイルについてです。