8 Autonomous Databaseでの顧客管理対象ORDSのインストールと構成

この項では、Autonomous Databaseで顧客管理対象Oracle REST Data Services (ORDS)をインストールして構成する方法について説明します。

トピック:

8.1 Autonomous Database上の顧客管理対象Oracle REST Data Servicesについて

Autonomous Databaseインスタンスをプロビジョニングする場合、デフォルトでOracle REST Data Services (ORDS)が事前構成されており、インスタンスで使用できます。デフォルトのORDSを使用して、Oracleは必要な構成、パッチ適用およびメンテナンスを実行します。また、顧客管理環境で実行されているORDSを使用するようにAutonomous Databaseを構成することもできます。

Autonomous DatabaseでデフォルトのORDSを使用する場合、ORDS構成オプションはいずれも変更できません。たとえば、デフォルトの構成では、JDBC接続プールの接続数は最大100になり、ORDSの接続はLOWデータベース・サービスを使用するように事前構成されます。Oracle REST Data Servicesの構成および管理を手動で制御する場合は、顧客管理対象環境を使用します。たとえば、このオプションは、アプリケーションに多数の接続プールが必要な場合や、ORDS構成オプションをより詳細に制御する必要がある場合に使用します。

ORDSが顧客管理対象環境で実行される場合、顧客管理対象環境でORDSの構成、パッチ適用およびメンテナンスを行う必要があります。既存の自律型管理対象ORDSに加えて顧客管理対象ORDSを使用するようAutonomous Databaseを構成した後、使用環境を経由してORDS HTTPSトラフィックをルーティングできます。デフォルトのAutonomous Database WebサーバーおよびORDSがまだ実行中であり、ORDSトラフィックは顧客管理環境で実行中のORDSに移動します。これにより、Autonomous Database用の追加のHTTPSソリューションと代替HTTPSソリューションが提供されます。

ORDSの顧客管理環境をインストールして構成すると、Autonomous Databaseで使用可能なデフォルトのOracle管理対象ORDSでは使用できない構成オプションを指定してORDSを実行できます。

ORDSの顧客管理対象環境のインストールと構成は、Autonomous Databaseでのみサポートされています。

ノート:

  • Autonomous Database (ServerlessまたはDedicated)で実行されているOracle REST Data Services (ORDS)のメジャー・リリースに最も近いバージョンのORDSの顧客管理対象環境を使用するために、ORDSのバージョンが、そのメジャー・リリース内である必要があります。

    たとえば:

    Autonomous Databaseで現在ORDSバージョン22.4がホストされている場合は、顧客管理環境で、利用可能な最新のORDSバージョンが実行されている必要があります。最良の結果を得るには、ORDSの最新バージョンを、23.1や22.3など、可能なかぎり近いバージョンに保ちます。

    ノート:

    最新バージョンのORDSは、OCI YUMリポジトリ内やORDSダウンロード可能Zipファイルの場所にあります。

8.2 インストール前のタスク

この項では、インストール前のタスクについて説明します。

始める前に:
  • Oracle Autonomous Databaseインスタンスからウォレットをダウンロードします。
  • Oracle APEXでORDSを使用している場合は、Oracle APEXの静的リソースを設定する必要があります。

8.2.1 ウォレットのダウンロード

Autonomous Databaseに接続するには、ORDSを構成する必要があります。顧客管理対象環境で稼働しているOracle REST Data Services (ORDS)を使用して、顧客管理対象ORDSを実行するシステム上のAutonomous Databaseウォレットを取得する必要があります。

  1. Autonomous Databaseインスタンスのウォレットをダウンロードする場合、詳細なステップについては、クライアント資格証明(ウォレット)のダウンロードに関する項を参照してください。

8.2.2 Oracle APEXの静的リソース

この項では、APEXの静的リソースの設定方法について説明します。

ORDSとAPEXを使用している場合は、APEXの静的リソースの設定を必ず行う必要があります。Oracleコンテンツ配信ネットワーク(CDN)を使用するか、APEXをダウンロードしてAPEXイメージ・フォルダを環境にコピーして、APEX静的リソースを設定できます。

  1. Oracleでは、Oracleコンテンツ配信ネットワークを使用してAPEX静的リソースを設定することをお薦めします。詳細な手順は、Autonomous Databaseでの顧客管理対象ORDSに関する項を参照してください。

    ノート:

    CDNを使用してAPEX静的リソースを設定する必要があるのは1回のみで、APEXはこれをAutonomous Databaseで自動的にアップグレードします。
  2. APEXをダウンロードし、APEX静的リソースを構成します。
    • Oracle APEXダウンロードの場所からAPEXをダウンロードします
    • imagesディレクトリをコピーします。imagesディレクトリのコピーに関する項を参照してください

      ノート:

      APEX静的リソースをダウンロード、メンテナンスおよびアップグレードし、使用しているAPEXバージョンがAutonomous DatabaseのAPEXバージョンと一致していることを確認する必要があります。

8.3 顧客管理対象ORDSのORDSコマンドライン・インタフェース

ORDSコマンドライン・インタフェース(CLI)は、顧客管理対象ORDSの構成を自動化するための対話型およびサイレント・コマンドinstall adbを提供しています。これには、環境でのORDS構成の作成が含まれています。顧客管理対象環境で実行されているOracle REST Data Services (ORDS)でAutonomous Databaseを使用する場合は、このコマンドを実行します。これにより、ORDSランタイム・データベース・ユーザーが作成されます。ORDSは接続して、そのランタイム・ユーザーに権限を提供できます。また、APEX、PL/SQLゲートウェイおよびOWAに使用されるPL/SQLゲートウェイ・データベース・ユーザーを作成して権限を付与し、ランタイム・ユーザーを介した接続を許可します。ランタイム・データベース・ユーザーおよびゲートウェイ・データベース・ユーザーは、Autonomous Databaseに作成されます。

8.3.1 ADBコマンドライン・インタフェース用の対話型インストール

ORDSコマンドライン・インタフェース(CLI)を使用すると、顧客管理対象ORDSを設定するための次の情報が対話形式で要求されます。

  • ウォレット・パス
  • ウォレットzipファイルに含まれるtnsnames.oraのネット・サービス名
  • 管理者ユーザー
  • ランタイム・データベース・ユーザー
  • PL/SQLゲートウェイ・ユーザー
  • 追加のデータベース機能
  • スタンドアロン・オプション
例:
  • ords install adb
  • ords install adb --interactive [OPTIONS]
  • ords install adb -i [0PTIONS]
8.3.1.1 顧客管理対象ORDSコマンド・オプション
オプション 説明
admin-user <DATABASE USER> ユーザーを作成する権限と、Autonomous Databaseでデータベース・ユーザーに権限を付与する権限を持つ管理者データベース・ユーザー。
db-pool <POOL NAME> データベース接続プールの名前。
db-user <DATABASE USER> ORDSランタイム・データベース・ユーザー。
gateway-user <DATABASE USER> ストアド・プロシージャにアクセスする権限を持つPLSQLゲートウェイ・データベース・ユーザー。
feature-db-api <BOOLEAN>

DB API機能を有効にするかどうかを指定します。

trueまたはfalseを指定できます。

  • 値がtrueに設定されている場合、DB API機能が有効になります。
  • 値がfalseに設定されている場合、DB API機能は無効になります。

指定したオプションが--feature-sdw trueおよび--feature db-api falseの場合、エラーが返されます。

feature-rest-enabled-sql <BOOLEAN>

REST対応SQL機能を有効にするかどうかを指定します。

trueまたはfalseを指定できます。

  • 値がtrue,に設定されている場合、REST対応SQL機能が有効になります。
  • 値がfalseに設定されている場合、REST対応SQL機能は無効になります。

    指定したオプションがare --feature-sdw trueおよび--feature-rest-enabled-sql falseの場合、エラーが返されます。

feature-sdw <BOOLEAN>

データベース・アクション機能を有効にするかどうかを指定します。

可能な値はtrueまたはfalseです。

  • 値がtrueに設定されている場合、データベース・アクション機能が有効になります。
  • 値がfalseに設定されている場合、データベース・アクション機能は無効になります。

このオプションがtrueに設定されている場合、構成ファイルで次の設定がtrueに設定されます。

  • database.api.enabled
  • restEnabledSql.active

--feature-sdw trueおよび次のオプションのいずれかが指定され、falseに設定されている場合、エラーが返されます。

  • --feature-db-api
  • --feature-rest-enabled-sql
-h, --help コマンドの使用情報を表示します。
-i, --interactive 必要な情報の入力を求めます。
log-folder <FOLDER> ユーザーの作成およびユーザーへの権限の付与時に、フォルダにログを書き込みます。このオプションを省略すると、出力は標準出力に書き込まれます。
password-stdin ファイルまたはこのドキュメントに入力をリダイレクトするときに、標準入力からパスワード値を読み取ります。
wallet <PATH> Autonomous Databaseからダウンロードしたウォレットzipファイルの場所。ウォレットが省略され、db.wallet.zip.path設定がORDS構成に存在しない場合、エラーを返します。
wallet-service-name <NET SERVICE NAME> ウォレットzipファイルにあるtnsnames.oraファイル内のネット・サービス名。--wallet-service-nameオプションが省略され、設定db.wallet.zip.serviceがORDS構成に存在しない場合、デフォルトでtnsnames.oraファイルから取得された<db>_LOWに設定されます。
8.3.1.2 対話型インストールのプロンプト

この項では、顧客管理対象ORDSを設定するための対話型インストール・プロンプトについて説明します。

顧客管理対象ORDSを設定するには、ORDSコマンドライン・インタフェース(CLI)を使用して情報の入力を対話的に要求します。

例:
ords install adb --interactive --prompt-password --log-folder <LOG
    FOLDER>
説明:
  • --prompt-password: ランタイム・データベース・ユーザーのパスワードおよびゲートウェイ・データベース・ユーザーのパスワードの入力を求めます
  • --prompt-password: このオプションを省略すると、パスワードが生成されます。

    データベース・ユーザーのパスワードには特別な注意が必要です。複数のサーバーでORDSを使用し、同じランタイム・データベース・ユーザーおよびゲートウェイ・データベース・ユーザーを使用する場合は、--prompt-passwordオプションを指定して、同じパスワードが使用されていることを確認します。

表8-1 対話型インストールのプロンプト

プロンプト番号 プロンプト 説明
1.
Enter a number to select the database pool to update, or create an additional database pool.
  The selected (or created) database pool will be used to configure a Customer Managed ORDS.
    [1] default      MYADB_MEDIUM  /path/to/myadb/wallet.zip
    [2] Create an additional database pool
  Choose [1]:
「データベース・プールを選択するための番号の入力」を参照してください
2. Enter the database pool name: 「データベース・プール名の入力」を参照してください
3.
Enter the Autonomous Database Wallet path: 
/path/to/wallet.zip
「Autonomous Databaseウォレット・パスの入力」を参照してください
4.
Enter a number to select the TNS Network alias to use
    [1] DEMO_LOW         ...service_name=g123_demo_low.adb.oraclecloud....
    [2] DEMO_MEDIUM  ...service_name= g123_demo_medium.adb.oracleclo...
    [3] DEMO_HIGH       ...service_name= g123_demo_high.adb.oraclecloud...
  Choose [1]: 2
「TNSネットワーク別名を選択するための番号の入力」を参照してください
5.
Provide database user name with administrator privileges.
    Enter the administrator username [ADMIN]:
管理者ユーザー名の入力
6. Enter the database password for ADMIN: ADMINのデータベース・パスワードの入力
7.
Enter the ORDS runtime database username 
[ORDS_PUBLIC_USER2]:
ORDSランタイム・データベース・ユーザー名の入力
8.
Enter the database password for ORDS_PUBLIC_USER2:
Confirm password:
ORDS_PUBLIC_USER2のデータベース・パスワードの入力
9.
Enter the PL/SQL Gateway database username:
PL/SQLゲートウェイ・データベースのユーザー名の入力
10.
Enter the database password for ORDS_PLSQL_GATEWAY2:
Confirm password:
ORDS_PLSQL_GATEWAY2のデータベース・パスワードの入力
11.
Connecting to Autonomous database user: ADMIN TNS Service: DEMO_MEDIUM
Retrieving information
 
12.
 Enter a number to select additional feature(s) to enable:
    [1] Database Actions  (Enables all features)
    [2] REST Enabled SQL and Database API
    [3] REST Enabled SQL
    [4] Database API
    [5] None
  Choose [1]:
追加機能を選択および有効化する番号の入力
13.
Enter a number to configure and start ORDS in standalone mode
    [1] Configure and start ORDS in standalone mode
    [2] Skip
  Choose [1]:
ORDSを構成および起動する番号の入力
14.
Enter a number to select the protocol
    [1] HTTP
    [2] HTTPS
  Choose [1]: 2
番号の入力によるプロトコルの選択
15. Enter the HTTP port [8080]: HTTPポートの入力
16. Enter the HTTPS port [8443]: HTTPポートの入力
17.
Enter the APEX static resources location:  
/path/to/apex/images
APEX静的リソースの場所の入力
8.3.1.2.1 データベース・プールを選択するための番号の入力

ORDS構成が存在し、データベース・プールが含まれている場合、このプロンプトが表示されます。

データベース・プールを選択して更新することも、顧客管理対象ORDSに追加のデータベース・プールを作成することもできます。

オプション2が選択されている場合は、プロンプト番号2が表示されます。それ以外の場合は、プロンプト番号3が表示されます。

ノート:

顧客管理対象ORDSを初めて設定するときに、ORDS構成が存在しない場合は、ウォレットの場所を入力するように求められます。プロンプト番号3を参照してください。
8.3.1.2.2 データベース・プール名の入力

データベース・プール名を指定します。

8.3.1.2.3 Autonomous Databaseウォレット・パスの入力
ダウンロードしたAutonomous Databaseウォレットの場所およびファイル名を指定します。

ノート:

顧客管理対象ORDSを初めて設定する場合は、ウォレットの場所の入力を求められます。それ以外の場合は、ORDS構成がすでに存在する場合は、プロンプト番号1が表示されます。
8.3.1.2.4 TNSネットワーク別名を選択するための番号の入力

ウォレットzipファイルに含まれているtnsnames.oraファイルから取得されたTNS別名を選択します。

8.3.1.2.5 管理者ユーザー名の入力

管理者権限を持つデータベース・ユーザーを指定します。データベース・ユーザーをADMINにデフォルト設定します。

8.3.1.2.6 ADMINのデータベース・パスワードの入力

管理者データベース・ユーザーのパスワードを指定します。

8.3.1.2.7 ORDSランタイム・データベース・ユーザー名の入力

ORDSランタイム・データベース・ユーザーを指定します。データベース・ユーザーをORDS_PUBLIC_USER2にデフォルト設定します。

8.3.1.2.8 ORDS_PUBLIC_USER2のデータベース・パスワードの入力

コマンドラインで--prompt-passwordオプションが指定されている場合、パスワードを要求します。それ以外の場合、パスワード・プロンプトは表示されず、パスワードが生成されます。

ノート:

ランタイム・データベース・ユーザーがAutonomous Databaseに存在しない場合、ランタイム・データベース・ユーザーが作成され、権限が付与されます。ランタイム・データベース・ユーザーがAutonomous Databaseにすでに存在し、ランタイム・ユーザーのパスワードがAutonomous Databaseのパスワードと一致しない場合、ランタイム・データベース・ユーザーのパスワードが変更されます。
8.3.1.2.9 PL/SQLゲートウェイ・データベースのユーザー名の入力

ORDS PL/SQLゲートウェイ・データベース・ユーザーを指定します。

8.3.1.2.10 ORDS_PLSQL_GATEWAY2のデータベース・パスワードの入力

コマンドラインで--prompt-passwordオプションが指定されている場合、パスワードを要求します。それ以外の場合、パスワード・プロンプトは表示されず、パスワードが生成されます。

ノート:

PL/SQLゲートウェイ・データベース・ユーザーがAutonomous Databaseに存在しない場合、ゲートウェイ・データベース・ユーザーが作成され、権限が付与されます。ゲートウェイ・ユーザーがすでにAutonomous Databaseに存在し、ゲートウェイ・ユーザーのパスワードがAutonomous Databaseのパスワードと一致しない場合、ゲートウェイ・データベース・ユーザーのパスワードが変更されます。
8.3.1.2.11 追加機能を選択および有効化する番号の入力

有効にする追加機能を選択します。

8.3.1.2.12 ORDSを構成および起動する番号の入力

ORDSをスタンドアロン・モードで実行するように構成できます。また、顧客管理対象ORDSの設定が完了した後、ORDSをスタンドアロン・モードで起動できます。

8.3.1.2.13 番号の入力によるプロトコルの選択
プロトコルを選択します。
  • オプション1が選択されている場合は、プロンプト番号15が表示されます。
  • オプション2が選択されている場合は、プロンプト番号16が表示されます。
8.3.1.2.14 HTTPポートの入力

HTTPポートを指定します。

8.3.1.2.15 HTTPSポートの入力

HTTPSポートを指定します。

8.3.1.2.16 APEX静的リソースの場所の入力
このプロンプトは、APEX静的リソースをメンテナンスしている場合にのみ表示されます。

ノート:

APEX静的リソースにOracle Content Delivery Networkを使用している場合、このプロンプトは表示されません。

8.3.2 コマンドライン・インタフェースでのADBのサイレント・インストール

サイレント・インストールの場合は、次のコマンド・オプションを指定して顧客管理対象ORDSを設定します。
  • データベース・プール: このオプションを省略すると、defaultデータベース・プールが使用されます。
  • ウォレット・パス: このオプションがORDS構成データベース・プールに存在しない場合は必須です。
  • ウォレット・サービス名: ウォレットzipファイルに含まれているtnsnames.oraファイルのTNS別名。このオプションを省略し、設定db.wallet.zip.serviceがORDS構成データベース・プールに存在しない場合、ウォレット・サービス名はデフォルトで<DB>_LOWになります。
  • 管理者のユーザー名とパスワード(必須)
  • ランタイム・データベースのユーザー名とパスワード(必須)
  • PL/SQLゲートウェイのユーザー名とパスワード(必須)
  • 追加のデータベース機能
ADBのインストール・コマンド
ords install adb [OPTIONS]
8.3.2.1 入力リダイレクションの使用

この項では、Hereドキュメントまたはファイルを使用して標準入力をリダイレクトする方法について説明します。

ファイルへのSTDINのリダイレクト

パスワードを含むファイルにSTDINをリダイレクトします。次の例では、ファイルに3つのパスワードが含まれている必要があります。各パスワードは、個別の行に指定する必要があります。

例:
ords install adb --admin-user <DATABASE USER> --db-user <DATABASE USER> --gateway-user <DATABASE
      USER> --wallet <PATH> --wallet-service-name <NET SERVICE NAME> --feature-sdw <BOOLEAN> --log-folder
      <FOLDER> --password-stdin < filename.txt
ここで、filename.txtにはパスワードが含まれています。
<PASSWORD FOR admin-user>
<PASSWORD FOR db-user>
<PASSWORD FOR gateway-user>

左から右に、最初のパスワードはコマンドラインの最初のユーザー・オプション(--admin-user)に属します。2番目のパスワードはコマンドラインの2番目のユーザー・オプション(--db-user)に属し、3番目のパスワードはコマンドラインの3番目のユーザー(--gateway-user)オプションに属します。

Hereドキュメントを使用した標準入力のリダイレクト

パスワードにHereドキュメント(heredocとも呼ばれる)を使用してSTDINをリダイレクトします。heredocは、<<リダイレクション演算子と、その後に続くデリミタ・トークンで構成されます。

各パスワードは個別の行に指定する必要があり、デリミタ・トークンで終了します。

例:
ords install adb --admin-user <DATABASE USER> --db-user <DATABASE USER> --gateway-user <DATABASE USER>  
--wallet <PATH> --wallet-service-name <NET SERVICE NAME> --feature-sdw <BOOLEAN> --log-folder <FOLDER> 
--password-stdin << EOF
<PASSWORD FOR admin-user>
<PASSWORD FOR db-user>
<PASSWORD FOR gateway-user>
EOF

左から右に、最初のパスワードはコマンドラインの最初のユーザー・オプション(--admin-user)に属します。2番目のパスワードはコマンドラインの2番目のユーザー・オプション(--db-user)に属し、3番目のパスワードはコマンドラインの3番目のユーザー(--gateway-user)オプションに属します。Hereドキュメントは、トークンEOFによって終了します。

ノート:

操作が完了したら、パスワードを含むファイルまたはスクリプトを削除します。