プラガブルデータベース概要www.doppo1.netプラガブルデータベース概要プラガブルデータベース(以下、PDB)とは12cで新たに追加された仮想DBのような機能です。PDBを利用することで以下のような機能を実現することができます。・PDBを利用するデータベースをCDB(マルチテナントコンテナデータベース)と呼びます・CDBは主にPDBを統括する親DB(ROOT$CDB)とテンプレート用DB(PDB$SEED)、PDB(複数可)で構成されます・ROOT$CDBはPDBの統括用DB、PDB$SEEDはPDBを作成するクローニング用テンプレートのような役割を持ちます。・ROOT$CDBやPDB$SEEDの中にアプリケーション用のスキーマを作成することはできません。PDB$SEEDはそもそも読み取り専用でOPENされており書き込みできないようになっています。ユーザ用オブジェクトはPDBに作成しますPDBのアーキテクチャアーキテクチャとしては今までのデータベースとあまり差異はなく既存の仕組みを踏襲した実装になっているようです。ポイントは以下の通りです。・SGA,ORACLE_HOME、REDOログ、制御ファイル、UNDOはプラガブルDB間で共有される(つまり、これらに障害がでた場合全PDBに影響がでる)・プロセスの仕組みも既存DBとほぼ変わりはない・UNDO以外の表領域(SYSTEM、SYSAUX、TEMP、ユーザ固有の表領域等)は各プラガブル別に独立したファイルとして分離されるPDBの起動と停止PDBの起動と停止は以下の手順で行います。1インスタンスを起動する(コマンドや手順などは通常のDBと同じ。optionsアイドル・インスタンスに接続しました。startupORACLEインスタンスが起動しました。bytesデータベースがマウントされました。データベースがオープンされました。open;プラガブル・データベースが変更されました。immediate;プラガブル・データベースが変更されました。通常のローカル接続で接続した場合CDB$ROOTに接続されます。PDBに接続するときはtnsnames.ora等の接続定義でサービス名にPDB名を指定することでPDBに直接接続することができます。sysdba接続されました。orap1;セッションが変更されました。database句で作成します。以下のコマンドはorap3という名前のPDBをPDB$SEEDからコピーして作成します。その他、既存PDBからクローンを作成するといったことができるようです。ディクショナリ・V$CONTAINERコンテナDBの一覧を表示する(全コンテナが参照できるのはCDB$ROOTから参照した場合のみ)。本サイトはリンクフリーです。本サイトの情報により発生した問題等については一切責任を負えません。管理人への連絡はftpsaba0123@hotmail.comまでどうぞ。