プライマリ・コンテンツに移動
Oracle® REST Data Servicesインストレーション、構成および開発ガイド
リリース3.0.11
E62039-09
目次へ移動
目次
索引へ移動
索引

前
次

E Oracle REST Data Servicesでのマルチテナント・アーキテクチャの使用

この項では、Oracle Database 12cマルチテナント・アーキテクチャで導入されるプラガブル・データベースのコピーおよび移動に関連するインストールの選択項目と様々な使用例について、Oracle REST Data Servicesに関連付けて説明します。

E.1 インストールの選択項目の理解

Oracle Database 12cリリース1 (12.1)では、マルチテナント・アーキテクチャが導入されています。このデータベース・アーキテクチャには、ルート・コンテナCDB$ROOT、シード・データベースPDB$SEEDおよび複数のプラガブル・データベース(PDB)を含むマルチテナント・コンテナ・データベース(CDB)が含まれます。PDBは、ユーザーおよびアプリケーションからは、非CDBであるかのように見えます。各PDBは、Oracle Databaseリリース11gの個別のデータベース・インスタンスに相当します。

ルート・コンテナCDB$ROOTは、メタデータ・リンクまたはオブジェクト・リンクを使用してすべてのPDBにアクセス可能な共通オブジェクトを保持します。シード・データベースPDB$SEEDは、新しいプラガブル・データベースをシードするために新しいPDBを作成する際に使用されます。Oracle Database 12cマルチテナント・アーキテクチャの主なメリットは、CPUやメモリーなどのデータベース・リソースをすべてのPDBで共有できることです。また、このアーキテクチャでは、アップグレード、パッチ、バックアップなどのタスクにおいて、複数のデータベースを1つのデータベースとして扱うことができます。

Oracle REST Data Servicesを、マルチテナント・データベースの1つ以上のプラガブル・データベースPDBまたはコンテナ・データベース(CDB)にインストールできます。インストールの選択項目を次に示します。

  • すべてのPDBでOracle REST Data Servicesの同じバージョンを有効にする場合には、CDBにインストールします。この項の残りの説明はCDBへのインストールを示します。

  • 一部のPDBのみがOracle REST Data Servicesを使用できるようにするには、または別々のPDBが別々のバージョンのOracle REST Data Servicesを使用するようにするには、目的のPDBにインストールします。(非CDBでも同じプロシージャを使用します。)

Oracle REST Data ServicesがCDBにインストールされている場合、ルート・コンテナ、シード・コンテナおよび任意の既存PDBにインストールされています。ルート・コンテナ(CDB$ROOT)には、Oracle REST Data Servicesパッケージ、ファンクション、プロシージャ、ビューなどの一般的なデータベース・オブジェクトを格納するORDS_METADATAスキーマが含まれます。Oracle REST Data Servicesのパブリック・ユーザー(ORDS_PUBLIC_USER)も含まれます。

シード・コンテナ(PDB$SEED)には、ORDS_METADATAスキーマおよびORDSパブリック・ユーザーが含まれます。新しいPDBを作成するには、PDB$SEEDをコピーし、CDB$ROOT内のORDS_METADATAスキーマの一般的なデータベース・オブジェクトにメタデータ・リンクを作成します。そのため、Oracle REST Data Services表の複数のコピーがあり、Oracle REST Data Servicesパッケージ、機能、プロシージャ、ビューの単一のコピーのみがあります。このように、各PDBにはORDS_METADATAスキーマとそれ自体のOracle REST Data Services表のコピーがあるため、Oracle REST Data ServicesアプリケーションのメタデータをそのPDB内に保持できます。各PDBにはそれ自体のORDSパブリック・ユーザーがあります。

『Oracle Database管理者ガイド』のシードを使用したPDBの作成に関する項も参照してください。

E.2 Oracle REST Data ServicesのCDBへのインストール

すべてのPDBを1つのマルチテナント環境に入れて、Oracle REST Data Servicesの同じリリースとパッチ・セットを使用するにはCDBにインストールします。(この選択をすると、別々のPDBでOracle REST Data Servicesの別々のリリースを使用することを許可しません。)

CDBにインストールする前に次を確認します。

  • PDBが読取り/書込みモードでオープン(マウント済またはクローズ済ではない)であることを確認します(PDB$SEED以外。これは読取り専用モードのままです)。『Oracle Database管理者ガイド』のPDBのオープン・モードの変更に関する項を参照してください。

  • デフォルトの表領域および一時表領域がORDS_METADATAによって使用され、ORDS_PUBLIC_USERユーザーが存在し、表領域名がわかっていることを確認します。インストール・プロシージャはそれらのユーザーを作成しますが、表領域は作成しません。

    ORDS_METADATAおよびORDS_PUBLIC_USERもシード・コンテナにインストールされ、デフォルトの表および一時表がPDB$SEEDに存在する必要があります。これらの表領域がそこに存在しない場合には、PDB$SEEDに表領域を作成します。『Oracle Database管理者ガイド』のCDBでのオラクル社が提供するSQLスクリプトの実行に関する項を参照してください。

Oracle REST Data ServicesをCDBにインストールするには、次の手順を実行します。

  1. Oracle REST Data Servicesのインストール・キットを解凍したフォルダに移動します。

  2. 次のコマンドを入力します。

    java -jar ords.war install advanced
    

    注意:

    プラガブル・マッピング機能を使用するには、「Oracle REST Data Servicesによって、すべてのPDBをアドレス可能にする(プラガブル・マッピング)」を参照してください。

  3. プロンプトが表示されたら、CDBのデータベース接続情報を入力します。

    Enter the name of the database server [localhost]:
    Enter the database listen port [1521]:
    Enter 1 to specify the database service name, or 2 to specify the database SID [1]:
    Enter the database service name: (for example, cdb.example.com)
  4. Oracle REST Data Servicesのインストールを検証します。

    Enter 1 if you want to verify/install Oracle REST Data Services schema or 2 to skip this step [1]:

    受け入れるか、1 (デフォルト)を入力して、CDBとそのPDBすべてにOracle REST Data Servicesをインストールします。

  5. ORDS_PUBLIC_USERのパスワードを入力して確認します。

    Enter the database password for ORDS_PUBLIC_USER:
    Confirm password:
    
  6. 入力を求めるメッセージが表示されたら、必要に応じて追加情報を入力します。(「コマンドライン・プロンプトを使用した拡張インストール」を参照してください。)

E.3 CDB環境でのOracle REST Data Servicesのアップグレード

Oracle REST Data Servicesの新しいリリースを使用する場合、CDBおよびそのプラガブル・データベース(PDB)でのORDSスキーマのアップグレードは、簡易または詳細インストールを実行すると自動的に発生します。

次に例を示します。

java -jar ords.war

Oracle REST Data Servicesがすでにインストールまたはアップグレードされている場合は、メッセージにOracle REST Data Servicesスキーマ・バージョンが表示され、情報の入力を要求されません。

エラーが発生した場合には、ログファイルを確認します。

E.4 Oracle REST Data Servicesによって、すべてのPDBをアドレス可能にする(プラガブル・マッピング)

プラガブル・マッピングは、CDB内のすべてのPDBをOracle REST Data Servicesによってアドレス可能にする機能を示します。この機能を使用するには、この項の指示に従ってください。

Oracle REST Data Services構成ファイルにdb.serviceNameSuffixパラメータが含まれている場合、これはOracle REST Data ServicesプールがCDBを指し、そのCDBに接続されているPDBをOracle REST Data Servicesによってアドレス可能にすることを示しています。

db.serviceNameSuffixパラメータの値は、データベースのDB_DOMAINデータベース初期化パラメータの値と一致している必要があり、ピリオド(.)で始まる必要があります。db.serviceNameSuffixパラメータの値を設定するには、次の手順を実行します。

  1. SQL*Plusで、SYSDBA権限を持つユーザーとしてルートに接続します。

  2. DB_DOMAINデータベース初期化パラメータの値を確認します。

    SQL> show parameter DB_DOMAIN
    
  3. SQL*Plusを終了します。

    SQL> exit
    
  4. DB_DOMAIN値が空ではない場合、コマンドラインでdb.serviceNameSuffixパラメータのキーと値およびそのDB_DOMAINを作成するコマンドを入力します。これは、このエントリをORDS構成ファイルに追加するために使用されます。

    echo db.serviceNameSuffix=.value-of-DB_DOMAIN > snsuffix.properties
    

    たとえば、DB_DOMAINexample.comに設定されている場合、次を入力します。

    echo db.serviceNameSuffix=.example.com > snsuffix.properties
    
  5. db.serviceNameSuffixパラメータ値が定義されていない場合、次の形式でコマンドを入力して構成ファイルにエントリを追加します。

    java -jar ords.war set-properties --conf pool-name snsuffix.properties
    

    ここで、pool-nameは次のいずれかになります。

    • PL/SQLゲートウェイ構成のpoolName

    • Oracle REST Data Services RESTful Services構成のpoolName_pu

    • Application Express RESTfulサービス構成のpoolName_rt

    例1: CDBのPDBをグローバルでアドレス可能にします。次のコマンドを入力してdefaultsを指定します。

    java -jar ords.war set-properties --conf defaults snsuffix.properties

    注意:

    ほとんどのユース・ケースでは、例1で示した方法(すべてのプールのプロパティをdefaults.xmlファイルを使用して設定)が最も適しています。

    例2: CDBのPDBをPL/SQLゲートウェイにアドレス可能にし、プール名をapexにします。次のコマンドを入力します。

    java -jar ords.war set-properties --conf apex snsuffix.properties
    

    たとえば、apexによって指定されているデータベースにexample.comDB_DOMAIN値があり、2つのPDB(pdb1.example.comおよびpdb2.example.com)がある場合、最初のPDBはパスが/ords/pdb1/で始まるURLにマップされ、2番目のPDBはパスが/ords/pdb2/で始まるURLにマップされます。

    例3: CDBのPDBをOracle REST Data Services RESTfulサービスにアドレス可能にし、プール名をapex_puにします。次のコマンドを入力します。

    java -jar ords.war set-properties --conf apex_pu snsuffix.properties
    

    例4: CDBのPDBをApplication Express RESTfulサービスにアドレス可能にし、プール名をapex_rtにします。次のコマンドを入力します。

    java -jar ords.war set-properties --conf apex_rt snsuffix.properties

E.5 CDB環境でのOracle REST Data Servicesのアンインストール

Oracle REST Data ServicesをCDBからアンインストールするには、uninstallコマンドを使用します。

次に例を示します。

java -jar ords.war uninstall

Oracle REST Data ServicesがCDBとそのプラガブル・データベース(PDB)から削除されます。