4 CDBの作成および構成
マルチテナント・コンテナ・データベース(CDB)の作成と構成には、CDBの計画、作成、オプションでEM Expressの構成などのタスクが含まれます。
- CDBの作成の概要
マルチテナント・コンテナ・データベース(CDB)の作成手順は、非CDBの作成手順に似ています。 - CDB作成計画
CDB作成では、複数のオペレーティング・システム・ファイルがCDBとして連携して動作するように準備します。 - CDBの作成
CDBは、DBCAを使用するか、CREATE DATABASE
SQL文を手動で発行して作成できます。 - CDB用EM Expressの構成
CDBの場合は、グローバルHTTPSポートを設定して、ルートおよび各PDB用にOracle Enterprise Manager Database Express (EM Express)を構成するか、CDB内のコンテナごとに異なるポートを設定できます。 - CDBの作成後
作成後のCDBは、ルートとPDBシードで構成されます。
親トピック: マルチテナント環境の作成および構成
CDBの作成について
マルチテナント・コンテナ・データベース(CDB)の作成手順は、非CDBの作成手順に似ています。
非CDBの作成手順は、『Oracle Database管理者ガイド』で説明されています。CDBを作成する前に、このマニュアルで説明されている概念およびタスクを理解する必要があります。
この章では、CDBを作成する場合の特別な考慮事項について説明します。また、この章では、『Oracle Database管理者ガイド』にある非CDBの作成手順とCDBの作成手順の違いについても説明します。
「CDB作成計画」に示すいくつかのガイドラインを使用してCDBを計画した後、Oracle Databaseソフトウェアのインストール中またはインストール後に、CDBを作成できます。インストール後にCDBを作成する一般的な理由は、次のとおりです。
-
Oracle Universal Installer (OUI)を使用してソフトウェアのみをインストールし、CDBを作成しなかったため。
-
既存のCDBまたは既存の非CDBと同じホストに別のCDBを作成するため。この場合、この章では、新しいCDBで既存のデータベースと同じOracleホームが使用されると想定します。OUIを再度実行して、新しいOracleホームにCDBを作成することもできます。
CDBを作成する場合、具体的には次の方法があります。
-
Database Configuration Assistant (DBCA)グラフィカル・ツールを使用
「DBCAを使用したCDB作成について」を参照してください。
-
CREATE DATABASE
SQL文を使用「CDBの作成」を参照してください。
親トピック: CDBの作成および構成
CDB作成計画
CDB作成では、複数のオペレーティング・システム・ファイルがCDBとして連携して動作するように準備します。
ノート:
CDBを計画する前に、「マルチテナント・アーキテクチャの紹介」でCDBとPDBの概念に関する情報を確認します。
- CDBの構成方法の決定
CDBの作成を準備するには、調査と綿密な計画が必要です。 - CDB作成の前提条件
新規CDBを作成する前に、前提条件を満たす必要があります。
親トピック: CDBの作成および構成
CDBの構成方法の決定
CDBの作成を準備するには、調査と綿密な計画が必要です。
最初のステップとして、CDBで現在サポートされていないOracle Database機能のリストが記載されている『Oracle Databaseリリース・ノート』を確認してください。これらの機能のうち1つ以上を使用する必要がある場合、非CDBを作成します。
次の各項では、CDBに適用される推奨アクションおよび考慮事項について説明します。
- PDBの計画
プラガブル・データベース(PDB)の表および索引を計画し、それらに必要な領域を見積ります。 - 物理レイアウトの計画
CDBを構成する基礎となるオペレーティング・システム・ファイルのレイアウトを計画します。 - 初期化パラメータの管理方法の理解
初期化パラメータ・ファイルに含まれる可能性がある初期化パラメータを学習します。 - 文字セットの選択
CDBの文字セットを選択する必要があります。 - CDBでサポートするタイム・ゾーンの決定
CDBでサポートする必要があるタイム・ゾーンを検討します。 - データベースおよびREDOログ・ブロック・サイズの選択
CDBの標準データベース・ブロック・サイズを選択します。 - SYSTEMおよびSYSAUX表領域の計画
CDBルートおよび各PDBには、個別のSYSAUX
およびSYSTEM
表領域が存在します。 - 一時表領域の計画
デフォルトの一時表領域を使用するように計画します。 - UNDOモードの選択
UNDO表領域を使用してUNDOデータを管理するように計画します。 - アプリケーションのサービスの計画
アプリケーションのニーズを満たすために必要なデータベース・サービスを計画します。 - CDBの起動と停止方法の理解
データベース・インスタンスの起動と停止、CDBのマウントとオープンの原理およびオプションを学習します。 - Oracle RACの計画
Oracle RACを使用する場合は、Oracle RAC環境を計画します。
親トピック: CDB作成計画
PDBの計画
プラガブル・データベース(PDB)の表および索引を計画し、それらに必要な領域を見積ります。
CDBでは、ほとんどのユーザー・データがPDBに存在します。ルートには、ユーザー・データは含まれないか、または最小限のユーザー・データが含まれます。CDBに含められるPDBを計画します。CDBのディスク記憶域要件は、Oracle Databaseインストールに必要な領域に、CDBに含められるPDBの領域要件の合計を加えたものです。
MAX_PDBS
初期化パラメータは、CDBルートまたはアプリケーション・ルートで作成できるPDBの合計数の制限を指定します。MAX_PDBS
のデフォルト値および最大値は、Oracle Databaseオファリングによって異なります。異なるエディションとサービスでサポートされる機能の詳細は、『Oracle Databaseライセンス情報ユーザー・マニュアル』を参照してください。
CDBにアプリケーション・コンテナを作成することもできます。アプリケーション・コンテナは、1つ以上のアプリケーションのデータを格納するアプリケーションPDBのコレクションです。また、アプリケーション・コンテナではユーザーが作成するアプリケーション共通オブジェクトがサポートされ、アプリケーション・コンテナ内のアプリケーションPDBで共有できます。
関連項目:
-
データベース構造と記憶域およびスキーマ・オブジェクトについてさらに学習するには、『Oracle Database管理者ガイド』を参照してください
-
MAX_PDBS
についてさらに学習するには、Oracle Databaseリファレンスを参照してください
親トピック: CDBの構成方法の決定
物理レイアウトの計画
CDBを構成する基礎となるオペレーティング・システム・ファイルのレイアウトを計画します。
CDBルート、PDB$SEED
、各PDB、各アプリケーション・ルートおよび各アプリケーションPDBについて個別のデータファイルが存在します。
単一インスタンスCDBにREDOログが1つ存在するか、またはOracle Real Application Clusters (Oracle RAC) CDBのインスタンスごとにREDOログが1つ存在します。また、Oracle RACでは、すべてのデータファイルおよびREDOログ・ファイルが共有記憶域に存在する必要があります。
関連項目:
-
Oracle Managed Filesの使用の詳細は、『Oracle Database管理者ガイド』を参照してください
-
Oracle RACの記憶域の構成の詳細は、『Oracle Grid Infrastructureインストレーションおよびアップグレード・ガイド』を参照してください。
-
該当のOracle Databaseインストレーション・ガイドなど、使用しているオペレーティング・システム固有のOracleマニュアル。
親トピック: CDBの構成方法の決定
初期化パラメータの管理方法の学習
初期化パラメータ・ファイルに含まれる可能性がある初期化パラメータについて理解します。
CDBを作成する前に、サーバー・パラメータ・ファイル(SPFILE)の概念および操作について理解しておいてください。SPFILEファイルを使用すると、初期化パラメータをサーバー側のバイナリ・ファイルに永続的に格納して管理できます。
CDBでは、1つのSPFILEまたは1つのテキスト形式の初期化パラメータ・ファイル(PFILE)が使用されます。ルートに設定した初期化パラメータの値は、PDBで継承することが可能です。ALTER
SYSTEM
文を使用して、PDBの一部の初期化パラメータを設定できます。
SPFILEを操作する場合、CDBルートは現在のコンテナである必要があります。SPFILEを作成または変更するユーザーは、SYSDBA
、SYSOPER
またはSYSBACKUP
管理権限を持つ共通ユーザーである必要があり、AS SYSDBA
、AS SYSOPER
またはAS SYSBACKUP
としてそれぞれ接続して権限を行使する必要があります。
次の初期化パラメータが重要です。
-
CDBを作成するには、
ENABLE_PLUGGABLE_DATABASE
初期化パラメータがTRUE
に設定されている必要があります。 -
CDBルートのグローバル・データベース名を作成するには、
DB_NAME
とDB_DOMAIN
の両方の初期化パラメータを設定します。ルートのグローバル・データベース名は、CDBのグローバル・データベース名です。PDBのグローバル・データベース名は、PDB名およびDB_DOMAIN
初期化パラメータによって定義されます。
関連項目:
-
スキーマ・オブジェクトの詳細は、『Oracle Database管理者ガイド』を参照してください。
-
グローバル・データベース名の決定の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
文字セットの選択
CDBの文字セットを選択する必要があります。
CDBのデータベースの文字セットを選択する場合、CDBに統合(接続)するデータベースの現在の文字セットを考慮する必要があります。CDBデータベースの文字セットにはAL32UTF8、CDBの各国語文字セットにはAL16UTF6をお薦めします。これらは最も柔軟性が高いためです。
CDBルートの文字セットがAL32UTF8の場合、CDBに接続されているPDBはCDBルートと異なる文字セットを保持できます。PDB$SEED
から作成されたPDBは、そのシードからAL32UTF8文字セットを継承しますが、PDBは別の文字セットに移行できます。ルートの文字セットがAL32UTF8でない場合、CDBルート内のすべてのPDBはそのルートの文字セットを使用します。
ノート:
Oracle Multitenantでは、あるコンテナのLOBに対する異なる文字セットのコンテナによるデータ・リンク、拡張データ・リンクまたはCONTAINERS()
句を使用したアクセスはサポートされません。たとえば、CDBルートとsalespdb
の文字セットが異なる場合、CDBルートで実行されるCONTAINERS()
問合せはsalespdb
のLOBにアクセスできません。
非CDBをCDBに移行する場合、最初に非CDBをAL32UTF8に移行するのが最適です。Oracle Database Migration Assistant for Unicode (DMU)を使用すると、非CDBをAL32UTF8に移行できます。CDBの作成後に、DMUを使用してCDBの文字セットを移行することはできません。
親トピック: CDBの構成方法の決定
サポートするタイム・ゾーンの決定
CDBでサポートする必要があるタイム・ゾーンを検討します。
CDB全体(すべてのPDBを含む)についてタイム・ゾーンを設定できます。また、PDBごとに個々にタイム・ゾーンを設定することもできます。
関連項目:
データベースのタイム・ゾーンとタイム・ゾーン・ファイルの指定の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
データベース・ブロック・サイズおよびREDOログ・ブロック・サイズの選択
CDBの標準データベース・ブロック・サイズを選択します。
このサイズはCDBの作成時にDB_BLOCK_SIZE
初期化パラメータによって指定しますが、CDBの作成後は変更できません。標準ブロック・サイズはCDB全体に適用されます。
セクター・サイズが4KBのディスク上にオンラインREDOログ・ファイルを格納する場合は、オンラインREDOログのブロック・サイズを手動で指定する必要があるかどうかを確認します。
-
データベース・ブロック・サイズの指定の詳細は、『Oracle Database管理者ガイド』を参照してください
-
REDOログ・ファイルのブロック・サイズの計画の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
SYSTEMおよびSYSAUX表領域の作成
CDBルートおよび各PDBには、個別のSYSAUX
およびSYSTEM
表領域が存在します。
SYSAUX
表領域の適切な初期サイズを決定する必要があります。また、SYSTEM
以外のユーザーに対してはデフォルトの表領域を使用し、データベース・オブジェクトがSYSTEM
表領域に誤って保存されないようにします。CDBルートおよび各PDBに、個別のデフォルト表領域を指定できます。
関連項目:
-
SYSAUX
表領域の詳細は、『Oracle Database管理者ガイド』を参照してください -
デフォルト永続表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
一時表領域の計画
デフォルト一時表領域の使用を計画します。
デフォルトの一時表領域は、CDB内のすべてのコンテナに存在します。したがって、CDBルート、すべてのPDB、アプリケーション・ルートおよびアプリケーションPDBには、独自のデフォルト一時表領域があります。
Oracle Databaseは、再帰的SQL専用の共有一時表領域を使用します。ホストされるPDBテナントは、この表領域を直接使用しません。
関連項目:
-
デフォルト一時表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
UNDOモードの選択
UNDOデータを管理するために、UNDO表領域を使用します。
CDBは異なるUNDOモードで実行できます。CDB全体で1つのアクティブなUNDO領域を持つか、CDB内のコンテナごとに別々のUNDO表領域を持つように、CDBを構成できます。CDBの作成時にUNDOモードを指定でき、CDBの作成後にUNDOモードを変更できます。
CDB全体で1つのアクティブなUNDO表領域を持つことを選択した場合は、共有UNDOが使用され、ローカルUNDOが無効になります。この構成では、単一インスタンスCDBには、アクティブなUNDO表領域が1つ存在します。ローカルUNDOが有効にされている場合は、単一インスタンス構成の各コンテナに1つのUNDO表領域があります。Oracle RACのCDBの場合、PDBがオープンされる各ノードで、各PDBに1つのUNDO表領域があります。共有UNDOを使用する場合は、適切な権限を持ち、現在のコンテナがルートである共通ユーザーのみが、UNDO表領域を作成できます。
ベスト・プラクティスはCDBでローカルUNDOを使用することです。共有UNDOは、主にアップグレードおよび移行のためにのみサポートされます。共有UNDOと比べると、ローカルUNDOにはわずかなオーバーヘッドがありますが、ローカルUNDOが持つ利点によって、ほとんどの環境でより適したUNDOとなります。ローカルUNDOによって切断操作およびポイント・イン・タイム・リカバリが速くなり、一部の機能(PDBの再配置など)で必要となります。デフォルトでは、DBCAはローカルUNDOを有効にして新しいCDBを作成します。
CDBでは、UNDO_MANAGEMENT
初期化パラメータをAUTO
に設定する必要があり、UNDOデータの管理にUNDO表領域が必要です。
ローカルUNDOが有効になっていない場合、現在のコンテナがルートであると、UNDO表領域は静的データ・ディクショナリ・ビューおよび動的パフォーマンス(V$)ビューに表示されます。現在のコンテナがPDBである場合、UNDO表領域は動的パフォーマンス・ビューにのみ表示されます。
また、ローカルUNDOが無効になっている場合、Oracle Databaseでは、現在のコンテナがPDBであると、UNDO表領域とロールバック・セグメントの操作が警告なしで無視されます。
関連項目:
-
UNDO管理の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
アプリケーションのサービスの計画
アプリケーションのニーズを満たすために必要なデータベース・サービスを計画します。
ルートおよび各PDBには、複数のサービスが必要な場合があります。ルートまたは個々のPDBに、サービスを作成できます。
データベース・サービスには、オプションのPDB
プロパティがあります。サービスを作成し、作成したサービスをPDB
プロパティを指定して特定のPDBに関連付けることができます。nullのPDB
プロパティが指定されたサービスは、CDBルートに関連付けられます。
提供されるPL/SQLパッケージDBMS_SERVICE
を使用してサービスを作成し、それらをPDBに関連付けることもできます。CREATE_SERVICE
プロシージャを実行すると、サービスが現在のコンテナに関連付けられます。
SRVCTLユーティリティ、Oracle Enterprise Manager Cloud Controlおよび提供されているDBMS_SERVICE
PL/SQLパッケージを使用して、サービスを管理できます。
PDBを作成すると、PDBの新しいデフォルト・サービスが自動的に作成されます。サービスには、PDBと同じ名前が付いています。このサービスは、SRVCTLユーティリティでは管理できません。ただし、ユーザー定義サービスを作成し、アプリケーションに合わせてカスタマイズできます。
関連項目:
-
データベース・サービスおよび単一インスタンス・データベースでのSRVCTLユーティリティの使用について学習するには、『Oracle Database管理者ガイド』を参照してください
-
Oracle RACデータベースでのSRVCTLユーティリティの使用の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
親トピック: CDBの構成方法の決定
CDBの起動と停止方法の学習
データベース・インスタンスの起動と停止、CDBのマウントとオープンの原理およびオプションについて理解します。
CDBでは、CDBルートおよびすべてのコンテナで単一のデータベース・インスタンスが共有されますが、Oracle RACを使用する場合は、複数の同時インスタンスが共有されます。CDB全体を起動して停止すると、ホストされるPDBの状態を判別できます。CDBがオープンされている場合は、CDBまたはPDBのコンテキストでALTER PLUGGABLE DATABASE
文を使用して、ホストされるPDBをオープンまたはクローズすることによって、PDBのオープン・モードを制御できます。下位互換性を維持するために、ALTER DATABASE OPEN
文の実行時にPDBが現在のコンテナである場合、この文はサポートされます。PDBが現在のコンテナである場合は、SQL*PlusのSTARTUP
コマンドおよびSHUTDOWN
コマンドを使用することもできます。ただし、SQL*PlusのSTARTUP MOUNT
コマンドはCDBのみの操作であり、PDBが現在のコンテナである場合は使用できません。
関連項目:
-
データベースの起動の詳細は、『Oracle Database管理者ガイド』を参照してください
親トピック: CDBの構成方法の決定
CDB作成の前提条件
新規CDBを作成する前に、前提条件を満たす必要があります。
新しいCDBを作成するには、次の前提条件を満たす必要があります。
-
「マルチテナント環境の前提条件」で説明する前提条件を満たしていることを確認してください。
-
Oracle Databaseインスタンスを起動するために十分なメモリーが使用可能であること。
CDBに必要なメモリーは、その各コンテナのワークロードおよびコンテナの数にあわせてサイズ指定します。
-
Oracle Databaseを実行するコンピュータ上で、設計したPDBのための十分なディスク記憶域が使用可能であること。Oracle RAC環境では、十分な共有記憶域が使用可能である必要があります。
CDBに必要なディスク記憶域は、そのCDBに含められるすべてのPDBの領域要件の合計です。
前提条件は、使用しているオペレーティング・システム固有の『Oracle Databaseインストレーション・ガイド』または『Oracle Grid Infrastructureインストレーションおよびアップグレード・ガイド』に説明されています。Oracle Universal Installerを使用すると、表示される手順に従ってインストールでき、環境変数、ディレクトリ構造および認可の設定に関するヘルプが表示されます。
親トピック: CDB作成計画
CDBの作成
CDBは、DBCAを使用するか、CREATE DATABASE
SQL文を手動で発行して作成できます。
ノート:
Database Configuration Assistant (DBCA)テンプレート・デプロイメントの使用はほとんど自動化されており、DBCAが完了するとCDBが使用可能状態になるので、CREATE DATABASE
SQL文ではなくこの方法でCDBを作成することをお薦めします。
- DBCAを使用したCDB作成について
CDBは、Database Configuration Assistant (DBCA)を使用して作成することをお薦めします。 - SQL文を使用したCDB作成について
CREATE DATABASE
SQL文を使用したCDBの作成は、非CDBの作成に似ています。 - CREATE DATABASE文を使用したCDBの作成
CREATE DATABASE
文を使用してCDBを作成する場合は、実行可能なCDBを作成する前に他の処理を実行する必要があります。 - CREATE DATABASE文を使用したCDBの作成: 例
次の例では、newcdb
という名前のCDBを作成します。
親トピック: CDBの作成および構成
DBCAを使用したCDB作成について
CDBは、Database Configuration Assistant (DBCA)を使用して作成することをお薦めします。
DBCAには、代替方法より優れた次の利点があります。
-
作成の大部分は自動化されています。
-
DBCAを使用すると、CDBを作成するときに、CDB内のPDB数を指定できます。
-
DBCAが完了すると、CDBは使用可能となります。
-
CDBの作成後は、DBCAを使用して、次の処理を実行できます。
-
ローカルPDBのクローニング
-
PDBの接続と切断
-
CDBの複製(サイレント・モードのみ)
-
選択したインストール・タイプによっては、Oracle Universal Installer (OUI)でDBCAを起動できます。また、Oracle Databaseをインストール後は、スタンドアロン・ツールとして、いつでもDBCAを起動できます。
DBCAを使用すると、次のいずれかのモードでCDBを作成できます。
-
対話型モード
このモードには、CDBを作成して構成するためのグラフィカル・インタフェースおよびガイド付きワークフローが用意されています。
-
非対話型モード(サイレント・モードとも呼ばれる)
このモードでは、クローニングに適したカスタマイズされたPDBシード・データベースを使用した、事前構成されたCDBテンプレート・デプロイメントをスクリプト記述できます。DBCAをサイレント・モードで実行するには、コマンドライン引数またはレスポンス・ファイル、あるいはその両方を指定します。
関連項目:
-
DBCAを使用したデータベースの作成方法を学習するには、『Oracle Database管理者ガイド』を参照
-
DBCAオンライン・ヘルプ
親トピック: CDBの作成
SQL文を使用したCDB作成について
CREATE DATABASE
SQL文を使用したCDBの作成は、非CDBの作成に似ています。
この項では、CDBを作成するための追加要件について説明します。CREATE DATABASE
を使用してCDBを作成する場合は、次を実行する必要があります。
-
PDBの有効化
-
CDBルート・ファイルの名前と場所の指定
-
PDB$SEED
ファイルの名前と場所の指定
ノート:
DBCAを使用しないで手動でCDBを作成する場合は、CREATE DATABASE
SQL文を使用します。
- PDBの有効化について
CDBを作成するには、CREATE DATABASE
文にENABLE PLUGGABLE DATABASE
句を含める必要があります。 - CDBルートおよびPDB$SEEDのファイルの名前と場所について
CDBを作成するには、Oracle Databaseで、CDBルートおよびPDB$SEED
のファイルの名前と場所が認識されている必要があります。 - PDB$SEEDのデータファイル属性について
PDBシード(PDB$SEED
)は、新しいコンテナを作成するためのテンプレートとして使用できます。 - CDBのUNDOモードについて
共有UNDOがデフォルトです。undo_mode_clauseをENABLE PLUGGABLE DATABASE
句に使用することで、CDBのUNDOモードを指定できます。
関連項目:
CDBに含まれるファイルの詳細は、『Oracle Database概要』を参照してください
親トピック: CDBの作成
PDBの有効化について
CDBを作成するには、CREATE DATABASE
文にENABLE PLUGGABLE DATABASE
句が含まれている必要があります。
この句はCREATE DATABASE
文に次のような影響を与えます。
-
ENABLE PLUGGABLE DATABASE
が含まれている場合この文では、ルートおよび
PDB$SEED
を含むCDBを作成します。CDBを非CDBに変更することはできません。 -
ENABLE PLUGGABLE DATABASE
が含まれていない場合新しく作成されたデータベースは非CDBで、これはCDBルートまたは
PDB$SEED
が含まれていないことを意味します。非CDBにPDBを含めることはできません。
親トピック: SQL文を使用したCDB作成について
CDBルートおよびPDB$SEEDのファイルの名前と場所について
CDBを作成するには、Oracle Databaseで、CDBルートおよびPDB$SEED
のファイルの名前と場所が認識されている必要があります。
CREATE DATABASE
文が正常に完了した後は、PDB$SEED
とそのファイルを使用して新しいPDBを作成できます。作成後のPDBシードを変更することはできません。
PDB$SEED
のファイルの名前と場所は、次のいずれかの方法で指定する必要があります。
-
CREATE DATABASE
のENABLE PLUGGABLE DATABASE SEED FILE_NAME_CONVERT
句 -
Oracle Managed Files
-
PDB_FILE_NAME_CONVERT
初期化パラメータ
複数の手法を使用している場合、CREATE DATABASE
文では、リストの優先順位に従っていずれかの手法が使用されます。たとえば、すべての手法を使用している場合、CREATE DATABASE
文では、ENABLE PLUGGABLE DATABASE SEED FILE_NAME_CONVERT
句での指定のみが使用されます。これは、この句がリストの最初にあるためです。
- SEED FILE_NAME_CONVERT句
CREATE DATABASE
文のSEED FILE_NAME_CONVERT
句は、CDBルートのファイル名を使用してPDB$SEED
ファイル名の生成方法を指定します。 - Oracle Managed Files
Oracle Managed Filesを有効化すると、PDB$SEED
のファイルの名前と場所を指定できます。 - PDB_FILE_NAME_CONVERT初期化パラメータ
PDB_FILE_NAME_CONVERT
初期化パラメータを使用すると、シードのファイルの名前と場所を指定できます。
関連項目:
親トピック: SQL文を使用したCDB作成について
SEED FILE_NAME_CONVERT句
CREATE DATABASE
文のSEED FILE_NAME_CONVERT
句は、CDBルートのファイル名を使用してPDB$SEED
のファイル名の生成方法を指定します。
この句を使用して、次のいずれかのオプションを指定できます。
-
1つ以上のファイル名パターンおよび置換ファイル名パターンを次の形式で指定します。
'string1' , 'string2' , 'string3' , 'string4' , ...
string1ファイル名パターンがstring2ファイル名パターンによって置き換えられ、string3ファイル名パターンがstring4ファイル名パターンによって置き換えられます。ファイル名パターン文字列と置換ファイル名パターン文字列のペアを必要な数だけ使用できます。
奇数の文字列を指定した(最終文字列に対応する置換文字列が存在しない)場合、エラーが返されます。1つのファイル名またはディレクトリと一致する複数のパターン/置換文字列を指定しないでください。
Oracle Managed Filesで管理されているファイルまたはディレクトリと一致するファイル名のパターンは指定できません。
-
ファイル名を変換する必要がない場合は、
NONE
を指定します。SEED FILE_NAME_CONVERT
句を省略することは、NONE
を指定することと同じです。
例4-1 SEED FILE_NAME_CONVERT句
このSEED FILE_NAME_CONVERT
句では、/oracle/dbs
ディレクトリ内のファイル名を使用して、/oracle/pdbseed/
ディレクトリ内のPDB$SEED
のファイルに対するファイル名を生成します。
SEED FILE_NAME_CONVERT = ('/oracle/dbs/', '/oracle/pdbseed/')
関連項目:
SEED FILE_NAME_CONVERT
句の構文は、『Oracle Database SQL言語リファレンス』を参照してください
PDB$SEEDのデータファイル属性について
PDBシード(PDB$SEED
)は、新しいコンテナを作成するためのテンプレートとして使用できます。
CDBルートのSYSTEM
表領域およびSYSAUX
表領域のデータファイル属性は、PDBシードに適さない場合があります。この場合は、tablespace_datafile
句を使用して、PDBシードのデータファイルに異なる属性を指定できます。これらの句を使用して、PDBシード内のSYSTEM
表領域とSYSAUX
表領域を構成しているすべてのデータファイルに対して属性を指定します。値が指定されていないすべての属性には、ルートから継承された値が使用されます。
tablespace_datafile
句の構文は、データファイルの名前と場所およびREUSE
属性を除き、データファイル指定の構文と同じです。「CDBルートおよびPDB$SEEDのファイルの名前と場所について」で説明されている、PDBシードのデータ・ファイルの名前と場所を指定するためのどの方法でも、tablespace_datafile
句を使用できます。
tablespace_datafile
句では、PDBシードのデータファイルの名前と場所は指定しません。かわりに、PDBシード内のSYSTEM
およびSYSAUX
データファイルについて、ルートとは異なる属性を指定します。SIZE
が表領域のtablespace_datafile
句で指定されていない場合、表領域のデータファイル・サイズは、対応するルートのデータファイル・サイズの事前定義された割合に設定されます。
例4-2 tablespace_datafile句の使用
次のCREATE DATABASE
句により、ルート内のSYSTEM
およびSYSAUX
表領域を構成するデータファイルの名前、場所および属性が指定されると想定します。
DATAFILE '/u01/app/oracle/oradata/newcdb/system01.dbf'
SIZE 325M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/newcdb/sysaux01.dbf'
SIZE 325M REUSE
次のtablespace_datafile
句を使用して、これらのデータファイルに異なる属性を指定できます。
SEED
SYSTEM DATAFILES
SIZE 125M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
SYSAUX DATAFILES
SIZE 100M
この例では、PDBシードのSYSTEM
表領域およびSYSAUX
表領域のデータファイルは、ルートのデータファイルからREUSE
属性を継承します。ただし、PDBシードの次のデータファイル属性は、ルートの属性とは異なります。
-
SYSTEM
表領域のデータファイルは、PDBシードの場合は125MB、ルートの場合は325MBです。 -
AUTOEXTEND
は、PDBシードのSYSTEM
データファイルに対して有効で、ルートのSYSTEM
データファイルに対してデフォルトで無効です。 -
SYSAUX
表領域のデータファイルは、PDBシードの場合は100MB、ルートの場合は325MBです。
関連項目:
データファイル指定の詳細は、『Oracle Database SQL言語リファレンス』を参照してください
親トピック: SQL文を使用したCDB作成について
CDBのUNDOモードについて
共有UNDOがデフォルトです。undo_mode_clauseをENABLE PLUGGABLE DATABASE
句に使用することで、CDBのUNDOモードを指定できます。
undo_mode_clauseでは、CDBのUNDOモードがローカルと共有のどちらであるかを指定します。ローカルUNDOモードは、CDB内のすべてのコンテナがローカルUNDOを使用することを意味します。CDBにローカルUNDOモードを構成するには、LOCAL UNDO ON
を指定します。
共有UNDOモードは、単一インスタンスCDBに1つのアクティブなUNDO表領域があるか、Oracle RAC CDBの場合はインスタンスごとに1つのアクティブなUNDO表領域があることを意味します。CDBの共有UNDOモードを構成するには、undo_mode_clauseを指定しないか、またはLOCAL UNDO OFF
を指定します。
親トピック: SQL文を使用したCDB作成について
CREATE DATABASE文を使用したCDBの作成
CREATE DATABASE
文を使用してCDBを作成する場合は、実行可能なCDBを作成する前に他の処理を実行する必要があります。
この処理には、データ・ディクショナリ表のビューの作成、標準PL/SQLパッケージのルートでのインストールなどがあります。これらの処理は、提供されたcatcdb.sql
スクリプトを実行することで実行され、これによって、CDBに必要なすべてのコンポーネントがインストールされます。
前提条件
次の前提条件に注意してください。
-
この項の手順が適用できるのは、単一インスタンス・データベースのインストールの場合のみです。Oracle RAC CDBの作成手順は、使用しているプラットフォーム固有のOracle Real Application Clusters (Oracle RAC)インストレーション・ガイドを参照してください。
-
Oracle ASMを使用してディスク記憶域を管理している場合は、これらのステップを実行する前に、Oracle ASMインスタンスを起動してディスク・グループを構成する必要があります。
-
ENABLE_PLUGGABLE_DATABASE
初期化パラメータがtrue
に設定されている必要があります。
CREATE DATABASE文を使用してCDBを作成するには:
-
『Oracle Database管理者ガイド』にあるトピック「
CREATE DATABASE
文を使用したデータベースの作成」のステップ1 - 8を完了します。CDBでは、
DB_NAME
初期化パラメータを使用してルートの名前を指定します。また、SIDはルートの名前に設定するのが一般的です。この名前の最大文字数は8文字です。詳細は、『Oracle Databaseリファレンス』のDB_NAME
初期化パラメータの説明を参照してください。 -
CREATE DATABASE
文を使用して、新しいCDBを作成します。「Oracle Managed Filesを使用したCDBの作成: 例」および「Oracle Managed Filesを使用しないCDBの作成」にある例を参照してください。
ヒント:
CREATE DATABASE
文が失敗した場合、および『Oracle Database管理者ガイド』にあるトピック「CREATE DATABASE
文を使用したデータベースの作成」のステップ7が未完了の場合は、予期しない方法で初期化パラメータが設定されている、このインスタンス用の既存のサーバー・パラメータ・ファイル(SPFILE)がないことを確認します。たとえば、すべての制御ファイルへの完全パスがSPFILEに設定されている場合は、それらの制御ファイルが存在しないと、CREATE DATABASE
文が失敗します。不必要なSPFILEを削除した後は、必ずインスタンスを停止して(STARTUP NOMOUNT
を指定して)再起動します。 -
catcdb.sql
SQLスクリプトを実行します。SQL*Plusに次を入力し、スクリプトを実行します。
@?/rdbms/admin/catcdb.sql
-
スクリプトによりプロンプトが表示されたら、パラメータ
1
のログ・ファイル・ディレクトリおよびパラメータ2
のログ・ファイル名を入力します。次の例の場合は、最初のプロンプトに対して
/tmp
を、2番目のプロンプトに対してcreate_cdb.log
を入力します。SQL> host perl -I &&rdbms_admin &&rdbms_admin_catcdb --logDirectory &&1 --logFilename &&2 Enter value for 1: /tmp Enter value for 2: create_cdb.log
-
スクリプトによりプロンプトが表示されたら、必要な他の情報を入力します。
たとえば、スクリプトによって、管理者パスワードや一時表領域名の入力を求めるプロンプトが表示されます。
Enter new password for SYS: ******** Enter new password for SYSTEM: ******** Enter temporary tablespace name: TEMP
-
catcdb.sql
が完了した後は、『Oracle Database管理者ガイド』にあるトピック「CREATE DATABASE
文を使用したデータベースの作成」のステップ12 - 14を実行します。
関連項目:
-
CREATE DATABASE
句およびOracle Managed Filesについてさらに学習するには、『Oracle Database管理者ガイド』を参照してください -
Oracle RACの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください
-
CREATE DATABASE
文に対する句およびパラメータ値についてさらに学習するには、『Oracle Database SQL言語リファレンス』を参照してください
親トピック: CDBの作成
CREATE DATABASE文を使用したCDBの作成: 例
次の例では、newcdb
という名前のCDBを作成します。
これらの例は、『Oracle Database管理者ガイド』にあるトピック「CREATE DATABASE
文を使用したデータベースの作成」のステップ1 - 8を完了していることを前提としています。
- Oracle Managed Filesを使用しないCDBの作成
次の文では、newcdb
という名前のCDBを作成します。この名前は、初期化パラメータ・ファイルのDB_NAME
パラメータと同じにする必要があります。 - Oracle Managed Filesを使用したCDBの作成: 例
ここでは、より簡単なCREATE DATABASE
文を使用できる、Oracle Managed Filesを使用したCDBの作成例を示します。
親トピック: CDBの作成
Oracle Managed Filesを使用しないCDBの作成
次の文では、newcdb
という名前のCDBが作成されます。この名前は、初期化パラメータ・ファイルのDB_NAME
パラメータと同じにする必要があります。
想定
この例では、次のことを想定しています。
-
初期化パラメータ・ファイルの
CONTROL_FILES
パラメータには、制御ファイルの数と場所が指定されています。 -
ディレクトリ
/u01/app/oracle/oradata/newcdb
が存在します。 -
ディレクトリ
/u01/app/oracle/oradata/pdbseed
が存在します。 -
ディレクトリ
/u01/logs/my
および/u02/logs/my
が存在します。
この例には、ルートおよびPDBシードのあるCDBを作成するENABLE PLUGGABLE DATABASE
句が含まれています。また、この例には、PDBシードのファイルの名前と場所を指定するSEED FILE_NAME_CONVERT
句も含まれています。この例には、SYSTEM
表領域およびSYSAUX
表領域に対して、ルートのデータファイルとは異なるPDBシードのデータファイル属性を指定するtablespace_datafile
句も含まれています。この例には、CDBのUNDOモードがローカルであることを指定するundo_mode_clause
が含まれます。
CREATE DATABASE newcdb
USER SYS IDENTIFIED BY sys_password
USER SYSTEM IDENTIFIED BY system_password
LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log')
SIZE 100M BLOCKSIZE 512,
GROUP 2 ('/u01/logs/my/redo02a.log','/u02/logs/my/redo02b.log')
SIZE 100M BLOCKSIZE 512,
GROUP 3 ('/u01/logs/my/redo03a.log','/u02/logs/my/redo03b.log')
SIZE 100M BLOCKSIZE 512
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 1024
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/newcdb/system01.dbf'
SIZE 700M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
SYSAUX DATAFILE '/u01/app/oracle/oradata/newcdb/sysaux01.dbf'
SIZE 550M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
DEFAULT TABLESPACE deftbs
DATAFILE '/u01/app/oracle/oradata/newcdb/deftbs01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/app/oracle/oradata/newcdb/temp01.dbf'
SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
UNDO TABLESPACE undotbs1
DATAFILE '/u01/app/oracle/oradata/newcdb/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
ENABLE PLUGGABLE DATABASE
SEED
FILE_NAME_CONVERT = ('/u01/app/oracle/oradata/newcdb/',
'/u01/app/oracle/oradata/pdbseed/')
SYSTEM DATAFILES SIZE 125M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
SYSAUX DATAFILES SIZE 100M
USER_DATA TABLESPACE usertbs
DATAFILE '/u01/app/oracle/oradata/pdbseed/usertbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
LOCAL UNDO ON;
次の特性を持つCDBが作成されます。
-
CDBは
newcdb
という名前です。グローバル・データベース名はnewcdb.us.example.com
であり、ドメイン部分(us.example.com
)は、初期化パラメータ・ファイルから取得されます。グローバル・データベース名の決定の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
CONTROL_FILES
初期化パラメータ(CDB作成前に初期化パラメータ・ファイルに設定)で指定された3つの制御ファイルが作成されます。初期化パラメータ・ファイルのサンプルについては『Oracle Database管理者ガイド』を参照し、制御ファイル指定の詳細は『Oracle Database管理者ガイド』を参照してください。 -
ユーザー・アカウント
SYS
とSYSTEM
のパスワードが指定した値に設定されます。パスワードでは、大/小文字が区別されます。SYS
およびSYSTEM
のパスワードを指定する2つの句は、このリリースのOracle Databaseではオプションです。ただし、いずれか一方の句を指定した場合は、もう一方の句も指定する必要があります。これらの句の使用方法の詳細、ユーザーSYS
およびSYSTEM
に対するパスワードの指定方法の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
新しいCDBには、
LOGFILE
句で指定されているように、オンラインREDOログ・ファイルのグループが3つあり、各グループには2つのメンバーが含まれます。MAXLOGFILES
、MAXLOGMEMBERS
およびMAXLOGHISTORY
は、REDOログの制限を定義します。REDOログ・ファイル数の選択の詳細は、『Oracle Database管理者ガイド』を参照してください。REDOログのブロック・サイズは、ディスクの物理セクターと同じサイズである512バイトに設定されています。ブロック・サイズを物理セクター・サイズと同じ(デフォルト)にする場合には、BLOCKSIZE
句はオプションです。通常のセクター・サイズおよびブロック・サイズは512です。BLOCKSIZE
に設定可能な値は512、1024および4096です。新しいディスクでセクター・サイズが4KBの場合には、オプションでBLOCKSIZE
を4096に指定します。REDOログ・ファイルのブロック・サイズの計画の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
MAXDATAFILES
では、CDBでオープンできるデータファイルの最大数を指定します。この数は、制御ファイルの初期サイズに影響を及ぼします。CDBの場合は、CDBルート・ファイルに加えて、すべてのコンテナのデータファイルの合計数を考慮した大きい数にMAXDATAFILES
を設定します。ノート:
CDBの作成時に、制限をいくつか設定できます。これらの制限には、オペレーティング・システムの制限によって制限され、その影響を受けるものがあります。たとえば、
MAXDATAFILES
を設定すると、Oracle Databaseは、初期のCDBにデータファイルが1つしかなくても、制御ファイルにMAXDATAFILES
個のファイル名を格納できるだけの領域を割り当てます。ただし、制御ファイルの最大サイズは制限されており、オペレーティング・システムによって異なるので、CREATE DATABASE
文のパラメータをすべて理論的な最大値で設定できるとはかぎりません。CDB作成時に制限を設定する方法の詳細は、『Oracle Database SQL言語リファレンス』および使用しているオペレーティング・システム固有のOracleマニュアルを参照してください。
-
このCDBにデータを格納する際は、
AL32UTF8
文字セットが使用されます。 -
NATIONAL CHARACTER SET
としてAL16UTF16
文字セットが指定され、特にNCHAR
、NCLOB
またはNVARCHAR2
として定義された列にデータを格納する際に使用されます。 -
DATAFILE
句で指定したとおりに、SYSTEM
表領域(オペレーティング・システム・ファイル/u01/app/oracle/oradata/newcdb/system01.dbf
,から構成される)が作成されます。指定した名前のファイルがすでに存在する場合は上書きされます。 -
SYSTEM
表領域はローカル管理の表領域として作成されます。ローカル管理SYSTEM
表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
SYSAUX DATAFILE
句で指定したとおりに、SYSAUX
表領域(オペレーティング・システム・ファイル/u01/app/oracle/oradata/newcdb/sysaux01.dbf
から構成される)が作成されます。SYSAUX
表領域の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
DEFAULT
TABLESPACE
句により、指定した名前で、このCDB用のデフォルト永続表領域が作成されます。 -
DEFAULT TEMPORARY TABLESPACE
句は、このCDBのルートのデフォルト一時表領域を作成し、名前を付けます。デフォルトの一時表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
UNDO TABLESPACE
句により、指定した名前で、このCDB用のUNDOデータの格納に使用されるUNDO表領域が作成されます。CDBでは、UNDOデータの管理にUNDO表領域が必要であり、UNDO_MANAGEMENT
初期化パラメータをAUTO
に設定する必要があります。このパラメータを省略すると、デフォルトでAUTO
に設定されます。UNDO表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
この
CREATE DATABASE
文ではARCHIVELOG
句が指定されていないため、初期状態ではREDOログ・ファイルはアーカイブされません。これはCDB作成時の慣例です。後でALTER DATABASE
文を使用して、ARCHIVELOG
モードに切り替えることができます。newcdb
のアーカイブに関連する初期化パラメータ・ファイル内の初期化パラメータは、LOG_ARCHIVE_DEST_1
およびLOG_ARCHIVE_FORMAT
です。アーカイブREDOログ・ファイルの管理の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
ENABLE PLUGGABLE DATABASE
句では、ルートおよびPDBシードを含むCDBを作成します。 -
FILE_NAME_CONVERT
句およびtablespace_datafile
句にはSEED
が必要です。 -
FILE_NAME_CONVERT
句では、/u01/app/oracle/oradata/newcdb
ディレクトリ内にあるファイル名を使用して、/u01/app/oracle/oradata/pdbseed
ディレクトリ内にあるPDBシードのファイルに対してファイル名を生成します。 -
SYSTEM DATAFILES
句では、ルートの属性とは異なるPDBシードのSYSTEM
表領域データファイルの属性を指定します。 -
SYSAUX DATAFILES
句では、ルートの属性とは異なるPDBシードのSYSAUX
表領域データファイルの属性を指定します。 -
USER_DATA TABLESPACE
句では、ユーザー・データおよびデータベース・オプション(Oracle XML DBなど)を格納するためのPDBシードの表領域を作成して名前を付けます。PDBシードを使用して作成されたPDBには、この表領域とそのデータファイルが含まれます。この句で指定された表領域およびデータファイルは、ルートでは使用されません。 -
LOCAL UNDO ON
句はCDBのUNDOモードをローカルに設定します。これは、CDB内の各コンテナがローカルUNDOを使用することを意味します。CDBがローカルUNDOモードで作成された場合、PDBシードにはUNDO表領域が含まれるため、そのPDBシードから作成された新しいPDBにはUNDO表領域が設定されます。PDBが接続またはリモートPDBのクローニングによって作成され、ソースPDBが共通UNDOモードであった場合、PDBが最初にオープンされるときに、PDBにUNDO表領域が自動的に作成されます。
ノート:
-
CREATE DATABASE
文で使用しているディレクトリがすべて存在することを確認します。CREATE DATABASE
文ではディレクトリは作成されません。 -
Oracle Managed Filesを使用していない場合は、すべてのTABLESPACE句に
DATAFILE
句またはTEMPFILE
句を指定する必要があります。 -
CDBの作成に失敗した場合は、アラート・ログを参照すると、失敗の原因とその対処措置を判別できます。アラート・ログを表示する方法の詳細は、『Oracle Database管理者ガイド』を参照してください。プロセス番号を含むエラー・メッセージが表示される場合は、そのプロセスのトレース・ファイルを調べます。そのプロセス番号がトレース・ファイル名に含まれているトレース・ファイルを探します。詳細は、Oracle Database管理者ガイドを参照してください。
-
CREATE DATABASE
文を失敗後に再発行するには、最初にインスタンスを停止してから、前のCREATE DATABASE
文で作成されたファイルを削除する必要があります。
親トピック: CREATE DATABASE文を使用したCDBの作成
Oracle Managed Filesを使用したCDBの作成: 例
ここでは、より簡単なCREATE DATABASE
文を使用できる、Oracle Managed Filesを使用したCDBの作成例を示します。
Oracle Managed Filesを使用するには、初期化パラメータDB_CREATE_FILE_DEST
を設定する必要があります。このパラメータは、CDBで作成されて自動的に名前が付けられる様々なCDBファイル用のベース・ディレクトリを定義します。
次の文は、初期化パラメータ・ファイルにこのパラメータを設定する例を示しています。
DB_CREATE_FILE_DEST='/u01/app/oracle/oradata'
この例では、Oracle ASM記憶域のパラメータを設定します。
DB_CREATE_FILE_DEST = +data
この例には、ルートおよびPDBシードのあるCDBを作成するENABLE PLUGGABLE DATABASE
句が含まれています。この例では、Oracle Managed FilesによってPDBシードのファイルの名前と場所が指定されるため、SEED FILE_NAME_CONVERT
句は含まれていません。ただし、この例には、SYSTEM
表領域およびSYSAUX
表領域に対して、ルートのデータファイルとは異なるPDBシードのデータファイル属性を指定するtablespace_datafile
句が含まれています。
Oracle Managed Filesおよび次のCREATE DATABASE
文を使用すると、SYSTEM
表領域とSYSAUX
表領域および文に指定されている追加の表領域がCDBによって作成され、すべてのデータファイル、制御ファイルおよびREDOログ・ファイルのデフォルト・サイズとプロパティが選択されます。この方法で設定されるこれらのプロパティおよび他のデフォルトCDBプロパティは本番環境には適さない場合があるため、生成された構成を調べて必要に応じて変更することをお薦めします。
CREATE DATABASE newcdb
USER SYS IDENTIFIED BY sys_password
USER SYSTEM IDENTIFIED BY system_password
EXTENT MANAGEMENT LOCAL
DEFAULT TABLESPACE users
DEFAULT TEMPORARY TABLESPACE temp
UNDO TABLESPACE undotbs1
ENABLE PLUGGABLE DATABASE
SEED
SYSTEM DATAFILES SIZE 125M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
SYSAUX DATAFILES SIZE 100M;
次の特性を持つCDBが作成されます。
-
CDBは
newcdb
という名前です。グローバル・データベース名はnewcdb.us.example.com
であり、ドメイン部分(us.example.com
)は、初期化パラメータ・ファイルから取得されます。グローバル・データベース名の決定の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
ユーザー・アカウント
SYS
とSYSTEM
のパスワードが指定した値に設定されます。パスワードでは、大/小文字が区別されます。SYS
およびSYSTEM
のパスワードを指定する2つの句は、このリリースのOracle Databaseではオプションです。ただし、いずれか一方の句を指定した場合は、もう一方の句も指定する必要があります。これらの句の使用方法の詳細、ユーザーSYS
およびSYSTEM
に対するパスワードの指定方法の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
DEFAULT TABLESPACE
句により、指定した名前で、このCDB用のデフォルト永続表領域が作成されます。 -
DEFAULT TEMPORARY TABLESPACE
句は、このCDBのルートのデフォルト一時表領域を作成し、名前を付けます。デフォルトの一時表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
UNDO TABLESPACE
句により、指定した名前で、このCDB用のUNDOデータの格納に使用されるUNDO表領域が作成されます。CDBでは、UNDOデータの管理にUNDO表領域が必要であり、UNDO_MANAGEMENT
初期化パラメータをAUTO
に設定する必要があります。このパラメータを省略すると、デフォルトでAUTO
に設定されます。UNDO表領域の作成の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
この
CREATE DATABASE
文ではARCHIVELOG
句が指定されていないため、初期状態ではREDOログ・ファイルはアーカイブされません。これはCDB作成時の慣例です。後でALTER DATABASE
文を使用して、ARCHIVELOG
モードに切り替えることができます。newcdb
のアーカイブに関連する初期化パラメータ・ファイル内の初期化パラメータは、LOG_ARCHIVE_DEST_1
およびLOG_ARCHIVE_FORMAT
です。アーカイブREDOログ・ファイルの管理の詳細は、『Oracle Database管理者ガイド』を参照してください。 -
ENABLE PLUGGABLE DATABASE
句では、ルートおよびPDBシードを含むCDBを作成します。 -
tablespace_datafile
句にはSEED
が必要です。 -
SYSTEM DATAFILES
句では、ルートの属性とは異なるPDBシードのSYSTEM
表領域データファイルの属性を指定します。 -
SYSAUX DATAFILES
句では、ルートの属性とは異なるPDBシードのSYSAUX
表領域データファイルの属性を指定します。
親トピック: CREATE DATABASE文を使用したCDBの作成
CDB用EM Expressの構成
CDBの場合、グローバルHTTPSポートを設定して、ルートおよび各PDB用にOracle Enterprise Manager Database Express (EM Express)を構成できます。あるいは、CDB内のコンテナごとに異なるポートを設定できます。
CDB用にEM Expressを構成するには:
グローバル・ポートを設定できます。設定すると、CDBにHTTPSポートを使用してEM ExpressでCDB内のすべてのPDBに接続できるようになります。あるいは、CDB内のコンテナごとに異なるHTTPSポートを設定できます。
-
SQL*Plusで、CDBのコンテナにアクセスします。
ユーザーには共通の
SYSDBA
管理権限が必要であり、接続時にAS SYSDBA
を使用してこの権限を行使する必要があります。コンテナは、ルートまたはPDBのいずれでもかまいません。「CDB内のコンテナへのアクセスについて」を参照してください。
-
次のいずれかの方法を使用して、ポートを設定します。
-
グローバル・ポートを設定するには、
CDB$ROOT
に接続し、次のSQL文を発行してCDB用にグローバル・ポートを構成します。EXEC DBMS_XDB_CONFIG.SETGLOBALPORTENABLED(TRUE);
-
現在のコンテナにHTTPSポートを設定するには、次のプロシージャを実行します。
exec DBMS_XDB_CONFIG.SETHTTPSPORT(https_port_number);
https_port_number
を適切なHTTPSポート番号と置き換えます。
-
-
EM Expressには、次のいずれかの方法でアクセスします。
-
グローバル・ポートを使用するには、PDBを含むCDBを構成したときにDatabase Configuration Assistant (DBCA)によって提供されたEM Express URLを入力します。EM Expressログイン画面が表示されたら、管理者資格証明を指定し、接続するPDBの名前を「コンテナ名」フィールドに入力します。
-
コンテナ用のHTTPSポートのURLは、次のとおりです。
https://database_hostname:https_port_number/em/
database_hostname
をデータベース・インスタンスが実行されているコンピュータのホスト名と置き換え、https_port_number
を適切なHTTPSポート番号と置き換えます。
ルートに接続されている場合、EM ExpressにはCDB全体に該当するデータが表示され、アクションが有効になります。PDBに接続されている場合、EM Expressには、PDBのみに該当するデータが表示され、アクションが有効になります。
ノート:
ポート1521にリスナーが構成されていな場合、EM Express用にこのポートを手動で構成する必要があります。手順は、『Oracle Database 2日でデータベース管理者』を参照してください。
-
関連項目:
EM Expressの詳細は、『Oracle Database 2日でデータベース管理者』を参照してください
親トピック: CDBの作成および構成
CDBの作成後
作成後のCDBは、ルートとPDBシードで構成されます。
ルートには、システムにより指定されたメタデータおよびPDBを管理できる共通ユーザーが含まれています。PDBシードは、新しいPDBの作成に使用できるテンプレートです。次の図に、新規に作成されたCDBを示します。
CDBにおいて、ルートには最小限のユーザー・データが含まれるか、またはユーザー・データは含まれていません。ユーザー・データはPDBに存在します。したがって、CDBの作成後、最初に行うタスクの1つは、ユーザー・データを含むPDBを追加することです。
次の図は、PDBが含まれるCDBを示しています。
1つ以上のアプリケーション・コンテナを作成するオプションがあります。アプリケーション・コンテナは、アプリケーション・ルートおよびアプリケーションPDBから構成され、1つ以上のアプリケーションのデータを格納します。アプリケーション・コンテナはアプリケーション共通オブジェクトを格納でき、アプリケーション・コンテナ内のアプリケーションPDBで共有できるユーザー・データを含みます。アプリケーション・コンテナ内のアプリケーションPDBを迅速に作成するためのアプリケーション・シードを含むこともできます。
PDBとアプリケーション・コンテナをCDBに追加すると、CDBの物理構造は非CDBの物理構造とよく似たものになります。CDBには次のファイルが含まれています。
-
1つの制御ファイル
-
単一インスタンスCDBに1つのアクティブなオンラインREDOログ、またはOracle RAC CDBのインスタンスごとに1つのアクティブなオンラインREDOログ
-
一時ファイルのセット
CDBのルート用に1つ、各PDB、各アプリケーション・ルート、各アプリケーションPDB用に1つのデフォルト一時表領域があります。
-
システム・データファイルのセット
CDBと非CDBとの主な物理的違いは、データファイルにあります。非CDBに含まれるシステム・データファイルは1セットのみです。これに対して、CDBには、CDB内のコンテナごとに1セットのシステム・データファイル、およびPDB、アプリケーション・ルート、アプリケーションPDBごとに1セットのデータファイルが含まれます。これに加えて、CDBにはコンテナごとに1セットのユーザー作成のデータファイルが含まれています。CDBがローカルUNDOモードである場合、各コンテナにも固有のUNDO表領域および関連付けられているデータファイルがあります。
-
ユーザーが作成したデータファイルのセット
各PDBには、システム以外のデータファイルの独自のセットが含まれます。これらのデータファイルには、PDBのユーザー定義スキーマおよびデータベース・オブジェクトが含まれます。
CDBのバックアップおよびリカバリには、Recovery Manager (RMAN)を使用することをお薦めします。PDBポイントインタイム・リカバリ(PDB PITR)は、RMANを使用して実行する必要があります。デフォルトでは、RMANはCDBの制御ファイルの自動バックアップをオンにします。CDBの制御ファイルの自動バックアップを有効にして、PDB PITRでデータファイルの追加や削除を取り消すことができるようにすることをお薦めします。
CDBと非CDBの物理構造は似ているため、ほとんどの管理タスクはCDBと非CDBとで違いはありません。ただし、CDBに固有の管理タスクもあります。次の章では、これらのタスクについて説明します。
-
この章では、次のタスクについて説明しています。
-
PDBシードを使用したPDBの作成
-
既存のPDBまたは非CDBのクローニングによるPDBの作成
-
再配置によるPDBの作成
-
プロキシPDBとしてのPDBの作成
-
PDBの接続
-
PDBの切断
-
PDBの削除
-
-
この章では、次のタスクについて説明しています。
-
アプリケーション・コンテナの作成
-
アプリケーション・シードの作成
-
アプリケーション・コンテナの切断
-
アプリケーション・シードの切断
-
アプリケーション・コンテナの削除
-
アプリケーション・シードの削除
-
-
この章では、次のタスクについて説明しています。
-
コンテナへの接続
-
コンテナへの切替え
-
CDBの変更
-
ルートの変更
-
PDBのオープン・モードの変更
-
CDBでのDDL文の実行
-
CDBインスタンスの停止
-
-
この章では、次のタスクについて説明しています。
-
PDBへの接続
-
PDBの変更
-
PDBに関連付けられたサービスの管理
-
-
この章では、次のタスクについて説明しています。
-
アプリケーション・コンテナ内のアプリケーションの管理(アプリケーションのインストール、アップグレードおよびパッチ適用を含む)
-
アプリケーション共通オブジェクトの管理
-
アプリケーション・コンテナ内のコンテナに対するDML文の発行
-
コンテナ・マップを使用したPDBでのパーティション化
-
-
この章では、次のタスクについて説明しています。
-
CDBおよびそのPDBを監視するためのビューの問合せ
-
CDBおよびそのPDBに関する情報を提供するサンプル問合せの実行
-
-
「PDBに対するOracle Resource Managerの使用」
この章では、次のタスクについて説明しています。
-
CDBにおけるリソース・プランの作成
-
CDBにおけるリソース・プランの管理
-
-
この章では、次の項目について説明しています。
-
CDBにおける
DBMS_SCHEDULER
の起動 -
CDBにおけるジョブ・コーディネータおよびスレーブ・プロセス
-
DBMS_JOB
の使用 -
PDBをクローズするプロセス
-
新規ビューおよび変更されたビュー
-
関連項目:
-
マルチテナント・アーキテクチャ・ドキュメント・ロードマップについては、『Oracle Database概要』を参照してください
-
RMANの詳細は、『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください
親トピック: CDBの作成および構成