2 Oracle REST Data Servicesのインストールおよび構成
この章では、Oracle REST Data Services (ORDS)をインストール、構成およびアップグレードする方法について説明します。
2.1 Oracle REST Data Servicesのインストール
ノート:
このトピックの手順は、単一インスタンスのデータベースまたはPDBにOracle REST Data Servicesをインストールする場合に適用されます。CDB環境でのORDSの設定については、「Oracle REST Data Servicesでのマルチテナント・アーキテクチャの使用」の項を参照してください。
次に、次のいずれかのオプションを使用してORDSをインストールできます。
関連項目:
- JSONデータの永続にOracle REST APIを使用する場合は、Oracle REST APIもインストールする必要があります。詳細は、『Oracle REST Data Services SODA for REST開発者ガイド』のOracle REST APIのインストールに関する項を参照してください
2.1.1 ORDSのダウンロード
この項では、ORDSをダウンロードする方法について説明します。
ORDS Zipファイルのダウンロード
Oracle REST Data Services (ORDS)のダウンロード・ページからords_<latest>.zip
ファイルをダウンロードして、任意のフォルダにords_<latest>.zip
ファイルを解凍します。ファイルの解凍先として選択したフォルダは、ORDS製品フォルダと呼ばれます。ORDS製品フォルダには、bin
フォルダと、ORDSの実行に必要なその他のフォルダおよびファイルが含まれています。
bin
フォルダの追加 オペレーティング・システムのPATH環境変数にORDS bin
フォルダを追加することをお薦めします。
echo -e 'export PATH="$PATH:/<ords product folder>/bin"' >> ~/.bash_profile
新しいシェルを起動すると、この変更が反映されます。
SetX PATH "%PATH%;<ords product folder>\bin"
新しいコマンド・プロンプトを起動すると、この変更が反映されます。
echo -e 'export PATH="$PATH:/<ords product folder>/bin"' >> ~/.zprofile
新しいターミナルを起動すると、この変更が反映されます。
yumを使用したORDSのダウンロード
ORDSは、OL7およびOL8リポジトリで公開されます。システム管理者は、ORDSをインストールしてその依存関係を処理するために、このリポジトリをyum構成に追加できます。
OL7リポジトリ: https://yum.oracle.com/repo/OracleLinux/OL7/oracle/software/x86_64/
OL8リポジトリ: https://yum.oracle.com/repo/OracleLinux/OL8/oracle/software/x86_64/
sudo yum install ords
前述のコマンドは、すべてのORDS依存関係を処理し、ORDSプログラムを/usr/local/bin/ords
フォルダに配置して、ORDS構成を設定し、ORDSをデータベースにインストールまたはアップグレードします。
/etc/ords/conf
構成ディレクトリを使用することをお薦めします。次のコマンドを使用して、ORDSを構成します。ords -–config /etc/ords/config install
別のディレクトリを使用してORDS構成を配置し、Linuxシステム・サービス管理をsystem dまたはsystem vとして使用する場合は、/etc/ords.conf
フォルダにORDS config
ディレクトリを構成します。
RPMを使用したORDSのインストール
sudo rpm -i ords-22.1.X-X.elX.noarch.rpm
これにより、ORDSプログラムが/usr/local/bin/ords
フォルダに配置され、ORDS構成が設定され、データベースにORDSがインストールまたはアップグレードされます。
/etc/ords/conf
フォルダの構成ディレクトリを使用することをお薦めします。ords -–config /etc/ords/config install
別のディレクトリを使用してORDS構成を配置し、Linuxシステム・サービス管理をsystemdまたはsystem vとして使用する場合は、/etc/ords.conf
フォルダにORDS構成ディレクトリを構成します。
2.1.2 構成フォルダの構造の設定
この項では、構成フォルダの構造を設定する方法について説明します。
2.1.2.1 新しいORDS構成フォルダの指定
新規インストールでは、ORDS構成ファイルが構成フォルダに配置されます。ORDSリリース21.4.x以前の構成ファイルは、構成フォルダに移行されます。
- コマンド・オプション:
構成フォルダを指定するには、
--config
オプションを使用します。例:
ords --config /path/to/conf install
- 環境変数:
ノート:
このオプションは、ORDSコマンドライン・インタフェースを使用しているときに--config
オプションを含めるのを忘れた場合に推奨されます。ORDS_CONFIG
:ORDS_CONFIG
環境変数を作成します。LinuxまたはUNIXオペレーティング・システムの例:
Shell script containing ORDS_CONFIG cat example_env export ORDS_CONFIG=/path/to/conf echo $ORDS_CONFIG /path/to/conf
_JAVA_OPTIONS
:例:
export _JAVA_OPTIONS=-Dconfig.url=/Users/<username>/work/dbtools-dev/config ./ords-22.1.0.087.1756/bin/ords config list _JAVA_OPTIONS: -Dconfig.url=/Users/<username>/work/dbtools-dev/config
- 現行作業ディレクトリ:
--config <configuration_folder>
オプションが指定されておらず、ORDS_CONFIG
環境変数が定義されていない場合は、現行作業ディレクトリが構成フォルダとして使用されます。例:
現行作業ディレクトリが
/path/to/conf
の場合、その場所が構成フォルダに使用されます。
ノート:
-
ORDSがORDS製品フォルダに構成ディレクトリを作成しないようにすることをお薦めします。たとえば、次の場所に構成フォルダを設定できます。
/Users/<user_name>/work/dbtools-dev/config/
ベスト・プラクティスは、構成ファイルをアプリケーション・ファイルと別にすることです。これにより、メンテナンスとアップグレードが簡単になり信頼性が向上します。
-
次のコマンドは有効ではなくなりました。
例:
java -jar ords.war install
java -jar ords.war
を使用してレガシー・コマンドを指定すると、次の警告メッセージが表示されます。警告:
java -jar ords.war
の実行のサポートは非推奨になりました。ordsをPATHに追加し、ordsコマンドをかわりに使用してください。次のコマンドを実行してORDSをPATH
に追加します:<Displays an example of adding the bin folder to your PATH>
新しいターミナルを起動すると、この変更が反映されます。パスにORDS製品の
bin
フォルダを追加することをお薦めします。
2.1.3 対話型のコマンドライン・インタフェース・インストール
この項では、対話型のコマンドライン・インタフェース(CLI)インストールのプロンプトについて説明します。プロンプトにより、ORDS構成ファイルの作成または更新、ORDSスキーマ、ORDSデータベース・ユーザー、およびデータベース内の関連データベース・オブジェクトのインストールまたはアップグレードに必要な情報の入力を求められます。スタンドアロン・モードで実行することもできます。
- installコマンドを指定します。例:
$ ords install
ノート:
構成ディレクトリが環境変数を介して指定されているか、現行作業ディレクトリにデフォルト設定されていることを前提としています。 - オプション
--config <CONFIG FOLDER>
の後に、installコマンドを指定します。次に例を示します。$ ords --config /path/to/config install
ords --config /path/to/conf install --interactive --log-folder /path/to/logs
表2-1 対話型インストールのプロンプト
プロンプト番号 | プロンプト | 説明 |
---|---|---|
1. |
|
「インストールのタイプを選択するための番号の入力」を参照してください。 |
2. |
|
「データベース・プールを選択するための番号の入力」を参照してください |
3. |
|
「データベース・プール名の入力」を参照してください |
4. |
|
「データベース接続を選択するための番号の入力」を参照してください |
5. |
|
「データベース・ホスト名の入力」を参照してください |
6. |
|
「データベース・リスナー・ポートの入力」を参照してください |
7. |
|
「データベース・サービス名の入力」を参照してください |
8. |
|
「TNSの場所の入力」を参照してください |
9. |
|
「TNSネットワーク別名を選択するための番号の入力」を参照してください |
10. |
|
「カスタム・データベースURLの入力」を参照してください |
11. |
|
「管理者ユーザー名の入力」を参照してください |
12. |
|
「データベース・パスワードの入力」を参照してください |
13. |
|
「デフォルト表領域の入力」を参照してください |
14. |
|
「追加機能を選択するための番号の入力」を参照してください |
15. |
|
「スタンドアロン・モードでORDSを構成および開始するための番号の入力」を参照してください |
16. |
|
「HTTPまたはHTTPSプロトコルを使用するための番号の入力」を参照してください |
17. |
|
「HTTPポートの入力」を参照してください |
18. |
|
「HTTPSポートの入力」を参照してください |
19. |
|
「証明書タイプを選択するための番号の入力」を参照してください |
20. |
|
「SSLホスト名の入力」を参照してください |
21. |
|
「SSL証明書のパスの入力」を参照してください |
22. |
|
「SSL証明書の秘密キーのパスの入力」を参照してください |
23. |
|
「APEX静的リソースの場所の入力」を参照してください |
2.1.3.1 インストールのタイプを選択するための番号の入力
インストールのタイプを選択します。
- オプション1
- データベースのORDSのインストールまたはアップグレードのみを実行する
- ORDSがデータベースに存在しない場合、ORDSスキーマ、ORDSデータベース・ユーザーおよび関連データベース・オブジェクトをインストールします。
- スキーマ・バージョンが製品バージョンより小さい場合、ORDSをアップグレードします。
- データベースのORDSのインストールまたはアップグレードのみを実行する
- オプション2
- データベース・プールを作成または更新して、データベースのORDSをインストール/アップグレードする
- データベース・プールを作成するか、既存のデータベース・プールを選択して更新します。
- 既存のデータベース・プールの場合、プロンプトが表示されると、設定値がデフォルト値として表示されます。
- データベースでORDSのインストール/アップグレードを実行する
- ORDSが存在しない場合、ORDSスキーマ、ORDSデータベース・ユーザーおよび関連データベース・オブジェクトをインストールします。
- スキーマ・バージョンが製品バージョンより小さい場合、ORDSをアップグレードします。
- データベース・プールを作成または更新して、データベースのORDSをインストール/アップグレードする
- オプション 3
- データベース・プールの作成または更新のみを実行する
- データベース・プールを作成するか、既存のデータベース・プールを選択して更新します。
- 既存のデータベース・プールの場合、プロンプトが表示されると、設定値がデフォルト値として表示されます。
- データベース・プールの作成または更新のみを実行する
2.1.3.2 データベース・プールを選択するための番号の入力
ORDSデータベース・プールが構成フォルダにすでに存在する場合、データベース・プールとその接続が表示されます。
データベース・プールを選択できます。
- プロンプト1のオプション2
- プロンプト1のオプション3
ノート:
ORDS構成プールが存在しない場合は、データベース接続タイプを入力するように求められます。プロンプト3を参照してください。2.1.3.3 データベース・プール名の入力
プロンプト番号2でオプション2を選択すると、データベース・プール名のプロンプトが表示されます。データベース・プール名を入力します。
ノート:
-
データベース・プール名に使用できるのは、小文字のアルファベットa-z、0-9の数字と-文字のみで、最初と最後は小文字の英数字にする必要があります。
たとえば、入力したプール名が
database1
の場合、そのプールへのすべてのRESTリクエストは/ords/database1/
で始まります。 -
データベース・プールが作成されると、データベース・プール・フォルダも、プール固有の設定およびデータベース・ユーザー資格証明を格納するウォレットとともに作成されます。
- このプロンプトでは、マッピング・パターンも設定されます。詳細は、「追加のデータベースの構成」を参照してください。
2.1.3.4 データベース接続を選択するための番号の入力
データベース接続タイプを選択します。
ノート:
ORDS構成プールが構成フォルダに存在しない場合は、プロンプト番号1から選択すると、プロンプト番号4が表示されます。
プロンプト1でオプション2またはオプション3を選択すると、default
という名前のデータベース・プール・フォルダが、プール固有の設定およびデータベース・ユーザー資格証明を格納するウォレットとともに作成されます。
2.1.3.7 データベース・サービス名の入力
- ORDS構成ファイルのサービス名設定。存在しない場合は次が行われます
ORACLE_PDB
環境変数がチェックされます。未定義の場合は次が行われますORACLE_SID
環境変数がチェックされます。未定義の場合は次が行われますorcl
がデフォルト値として使用されます。
2.1.3.8 TNSの場所の入力
tnsnames.ora
ファイルの場所を指定します。場所は、tnsnames.ora
ファイルがあるフォルダ、またはTNS接続用のtnsnames.ora
ファイルを含むzipファイルになります。
2.1.3.13 デフォルト表領域の入力
ノート:
ORDSがデータベースにインストールされていない場合、表領域の入力を求められます。2.1.3.15 スタンドアロン・モードでORDSを構成および開始するための番号の入力
ORDSをスタンドアロン・モードで実行するように構成できます。また、インストールまたはアップグレードの完了後に、ORDSをスタンドアロン・モードで起動できます。
ORDSを構成せず、スタンドアロン・モードで起動しない場合は、オプション2を選択して終了します。
2.1.3.16 HTTPまたはHTTPSプロトコルを使用するための番号の入力
使用するプロトコル(HTTPまたはHTTPS)を選択します。
ノート:
HTTPSとHTTPを使用してスタンドアロン・モードでORDSを実行することをお薦めします。2.1.4 非対話型のコマンドライン・インタフェース・インストール(サイレント)
非対話型のコマンドライン・インタフェース(CLI)インストールまたはサイレント・インストールでは、次のタスクを実行します。
- ORDS構成ファイルの作成または更新
- ORDSスキーマのインストールまたはアップグレード
- データベースでのORDSプロキシ・ユーザーおよび関連オブジェクトの作成
非対話型インストール・コマンドは、スタンドアロン・モードでは実行されません。スタンドアロン・モードで実行する場合は、その後にserve
コマンドを指定する必要があります。
非対話型インストールのコマンドライン・オプションを指定し、必要なオプション(たとえば、基本接続にはdb-port
オプションが必要)がない場合は、エラー・メッセージが表示されます。
--db-pool <pool_name>
オプションは、作成または更新するデータベース・プールを指定します。--db-pool
オプションを省略すると、default
データベース・プールにデフォルト設定されます。
2.1.4.1 コマンドライン・インタフェース・インストールのコマンド・オプションの理解
表2-2 コマンドライン・インタフェース・インストールのコマンド・オプション
オプション | 説明 |
---|---|
--admin-user <USERNAME> |
データベースにORDSをインストールまたはアップグレードする、またはORDSステータス情報を取得する権限を持つユーザーを指定します。 |
--bequeath-connect |
クライアントがネットワーク・リスナーをバイパスしてOracleデータベースに直接接続できるようにする継承接続を指定します。これは、クライアントがデータベースと同じサーバー上に存在する場合です。環境を設定して--bequeath-connectオプションを使用するには、Oracle REST Data Servicesのドキュメントを参照してください。 |
--config <CONFIG_PATH> |
構成ファイルを含むフォルダのパスを指定します。 |
--config-only |
構成の作成または更新のみを指定します。 |
--db-only |
ORDSをデータベースにインストールまたは更新し、構成ファイルを作成または更新しないことを指定します。 |
--db-pool <POOL_NAME> |
作成、更新または使用するデータベース・プールの名前を指定します。db-pool オプションを省略すると、default データベース・プールが使用されます。
|
--db-custom-url <URL> |
データベース接続のカスタム・データベースURLを指定します。 |
--db-hostname <HOST> |
データベース・ホスト名を指定します。 |
--db-port <PORT> |
データベース・ポートを指定します。 |
--db-servicename <SERVICENAME> |
データベース・サービス名を指定します。 |
--db-sid <SID> |
データベースSIDを指定します。 |
--db-tns-alias <ALIAS_NAME> |
tnsnames.ora ファイルに存在するTNS別名を指定します。
|
--db-tns-dir <TNS_DIR> |
tnsnames.ora ファイルがあるフォルダを指定します。
|
--feature-db-api <BOOLEAN> |
DB API機能を有効にするかどうかを指定します。 使用可能な値は、true またはfalse です。
指定したオプションが |
--feature-rest-enabled-sql <BOOLEAN> |
REST対応SQL機能を有効にするかどうかを指定します。 使用可能な値は、true またはfalse です。
指定したオプションが |
--feature-sdw <BOOLEAN> |
データベース・アクション機能を有効にするかどうかを指定します。 使用可能な値は、
このオプションが
|
--gateway-mode <MODE> |
PL/SQLゲートウェイ・モードを指定します。 使用可能な値は、 デフォルト値は
|
--gateway-user <USER> |
Oracleデータベースに存在し、ストアド・プロシージャにアクセスする権限を持つユーザーを指定します。 |
--interactive, -i |
必要なすべての情報をユーザーに要求します。 |
--help, -h |
コマンドの使用方法を示します。 |
--legacy-config <FOLDER> |
改訂された構成構造に移行するレガシー構成フォルダを指定します。 |
--legacy-context <STRING> |
レガシー構成で使用されていたコンテキスト(例: ords 、apex など)を指定します。
|
--log-folder |
インストール、アップグレード、修復またはアンインストールのログをログ・フォルダに書き込みます。このオプションを省略すると、出力は標準出力に書き込まれます。 |
--password-stdin |
ORDSのインストール、アップグレード、修復またはアンインストール・コマンドを非対話的に実行するには、このオプションを使用して、入力をファイルまたはhereドキュメントにリダイレクトするときに標準入力からパスワード値を読み取ります。 |
--pdb-exclude <(PDB...)> |
CDBに適用可能なオプションを指定します。 ORDSのインストール/アップグレードまたは修復から除外されるPDBのリスト。 |
--pdb-open-readwrite-all |
CDBに適用可能なオプションを指定します。 PDBのステータスがクローズまたは読取り専用である場合に、すべてのPDBを読取り/書込みモードでオープンするかどうかを指定します。 |
--pdb-open-readwrite <(PDB...)> |
CDBに適用可能なオプションを指定します。 ORDSのインストール、アップグレード、修復またはアンインストールのために、読取り/書込みで開かれる、読取り専用またはクローズのPDBのリスト。 |
--pdb-skip-readonly |
CDBに適用可能なオプションを指定します。 読取り専用のPDBをスキップします。 このオプションを省略すると、ORDSのインストールまたはアップグレードでPDBが読取り専用であることをユーザーに通知するエラー・メッセージが返されます。 |
--pdb-skip-closed |
CDBに適用可能なオプションを指定します。 クローズ(マウント)されているPDBをスキップします。 このオプションを省略すると、ORDSのインストール/アップグレードでPDBがクローズされていることをユーザーに通知するエラー・メッセージが返されます。 |
--proxy-user |
標準入力のリダイレクト時に、ファイルまたはhere ドキュメントにあるORDSデータベース・ユーザー(ORDS_PUBLIC_USER )のパスワードを指定します。
|
--proxy-user-tablespace <TABLESPACE> |
ORDSのインストールに適用可能なオプションを指定します。 プロキシ・ユーザー( このオプションを省略すると、デフォルトのデータベースのデフォルト表領域が使用されます。 |
--proxy-user-temp-tablespace <TABLESPACE> |
ORDSのインストールに適用可能なオプションを指定します。 プロキシ・ユーザー( このオプションを省略すると、デフォルトのデータベースの一時表領域が使用されます。 |
--schema-tablespace <TABLESPACE> |
このオプションを省略すると、デフォルトのデータベースのデフォルト表領域が使用されます。 |
--schema-temp-tablespace <TABLESPACE> |
ORDSのインストールに適用可能なオプションを指定します。
このオプションを省略すると、デフォルトのデータベースの一時表領域が使用されます。 |
2.1.4.2 入力リダイレクションの使用
この項では、hereコマンドまたはファイルを使用して標準入力をリダイレクトする方法について説明します。
ファイルへのSTDINのリダイレクト
パスワードを含むファイルにSTDINをリダイレクトします。次の例では、ファイルに2つのパスワードが含まれている必要があります。各パスワードは、個別の行に指定する必要があります。
$ cat password.txt
firstpassword
secondpassword
最初のパスワードは、コマンドラインの最初のユーザー(SYS
など)に属します。2番目のパスワードは、コマンドラインの2番目のユーザー(proxy-user
など)に属します。
ords --config <configuration_folder> install --db-pool <pool_name> --admin-user <username> --proxy-user
--db-hostname <host> --db-port <port_number> --db-servicename <service_name>
--log-folder <log_folder> --feature-sdw <boolean> --password-stdin < <filename>
例:
ords --config /path/to/conf install --db-pool db1 --admin-user SYS --proxy-user --db-hostname localhost
--db-port 1521 --db-servicename orcl --log-folder /path/to/logs --feature-sdw true
--password-stdin < password.txt
Hereドキュメントを使用した標準入力のリダイレクト
パスワードにHereドキュメント(heredocとも呼ばれる)を使用してSTDINをリダイレクトします。heredocは、<<
リダイレクション演算子と、その後に続くデリミタ・トークンで構成されます。
各パスワードは個別の行に指定する必要があり、デリミタ・トークンで終了します。
例:
最初のパスワードは、コマンドラインの最初のユーザー(SYS
など)に属します。2番目のパスワードは、コマンドラインの2番目のユーザー(proxy-user
など)に属します。
ords --config <configuration_folder> install --db-pool <pool_name> --admin-user <username> --proxy-user --db-hostname
<host> --db-port <port_number> --db-servicename <service_name> --log-folder <log_folder> --feature-sdw <boolean>
--password-stdin << EOF
<password1>
<password2>
EOF
ords --config /path/to/conf install --db-pool db1 --admin-user SYS --proxy-user --db-hostname
localhost --db-port 1521 --db-servicename orcl --log-folder /path/to/logs --feature-sdw true
--password-stdin << EOF
<password1>
<password2>
EOF
2.2 Oracle REST Data Servicesインストールの修復
ノート:
データベース内のORDSを修復するには、ORDS製品のバージョンが、データベースにインストールされているORDSスキーマのバージョンと同じである必要があります。ords [--config <folder>] install repair --interactive [--log-folder <folder>]
既存の構成がある場合は、データベース・プールのリストから選択できます。ORDSをインストールするデータベース接続を指定することもできます。管理者のユーザー名とパスワードを入力するように求められます。
例
Oracle REST Data Services - Interactive Repair
Enter a number to select the database pool to use or specify the database connection
[1] default jdbc:oracle:thin:@//localhost:1521/orcl
[2] sales jdbc:oracle:thin:@//localhost:1521/pdb1
[3] Specify the database connection
Choose [1]:
Provide database user name with administrator privileges.
Enter the administrator username: SYS
Enter the database password for SYS AS SYSDBA:
ノート:
Oracle REST Data Servicesをインストールするとき、Oracle Application Express (APEX)スキーマの検出が試行され、ビューが作成されます。このビューは、APEXスキーマ内の関連する表をOracle REST Data Servicesスキーマ内の表に結合したものです。APEXの前にOracle REST Data Servicesをインストールする場合、Oracle REST Data ServicesではAPEXスキーマが見つからないため、欠落しているAPEX表のかわりにスタブ・ビューが作成されます。
Oracle REST Data ServicesをAPEXの後にインストールし、Oracle REST Data Servicesから問い合せる必要があるAPEXオブジェクトが必ず存在しているようにすることをお薦めします。Oracle REST Data ServicesをAPEXの前にインストールする場合、修復コマンドを使用して、Oracle REST Data ServicesによるAPEXスキーマに対する問合せを強制的に再構築します。
2.2.1 修復CLIのコマンド・オプション
この項では、データベース内のORDSスキーマを修復するために使用される対話型および非対話型のインストール修復CLIコマンドについて説明します。
表2-3 修復CLIのコマンド・オプション
コマンド | 説明 |
---|---|
--admin-user <string>
|
データベースでORDSをインストール、アップグレードまたはアンインストールする権限を持つユーザーを指定します。 |
--bequeath-connect |
クライアントがネットワーク・リスナーをバイパスしてOracleデータベースに直接接続できるようにする継承接続を指定します。これは、クライアントがデータベースと同じサーバー上に存在する場合に発生します。 |
--db-custom-url <url> |
データベース接続のカスタム・データベースURLを指定します。 |
--db-hostname <string>
|
データベース・ホスト名を指定します。 |
--db-pool <string> |
データベース接続プールの名前を指定します。 |
--db-port <int> |
データベース・ポートを指定します。 |
--db-servicename <string> |
データベース・サービス名を指定します。 |
--db-sid <string> |
データベースを識別する一意の名前のシステム識別子を指定します。 |
--db-tns-alias <string> |
tnsnames.ora ファイルに存在するTNS別名を指定します。
|
--db-tns-dir <folder> |
tnsnames.ora ファイルがあるフォルダを指定します。
|
-h, --help |
コマンドの使用方法を示し、その情報を提供します。 |
-i, --interactive |
必要な情報の入力を求めます。 |
--log-folder <folder> |
インストール、アップグレードまたはアンインストールのログをログ・フォルダに書き込みます。このオプションを省略すると、出力は標準出力に書き込まれます。 |
--password-stdin |
このオプションを使用して、ords installまたはuninstallコマンドを非対話型で実行した場合に、入力をファイルまたはhere ドキュメントにリダイレクトするときに標準入力からパスワード値を読み取るように指定します。--password-stdin オプションとリダイレクト記号(「<」または「<<」)を省略すると、パスワードを必要とするコマンド・オプションに対してパスワードを入力するよう求められます。
|
--pdb-exclude <string...> |
ORDSのインストール、アップグレードまたは修復から除外されるPDBのリストを指定します。このオプションは、CDBにのみ適用されます。 |
--pdb-open-readwrite <string...> |
ORDSのインストール、アップグレード、修復またはアンインストールのために、読取り/書込みで開かれる、読取り専用またはクローズのPDBのリストを指定します。このオプションは、CDBにのみ適用されます。 |
--pdb-open-readwrite-all |
PDBのステータスがクローズまたは読取り専用の場合、すべてのPDBを読取り/書込みモードで開くことを指定します。このオプションは、CDBにのみ適用されます。 |
--pdb-skip-closed |
クローズ(マウント)されているPDBをスキップします。このオプションは、CDBにのみ適用されます。 |
--pdb-skip-readonly |
読取り専用のPDBをスキップします。このオプションは、CDBにのみ適用されます。 |
2.3 Oracle REST Data Servicesのアップグレード
この項では、Oracle REST Data Services (ORDS) 21.4.x以前のリリースからアップグレードする方法について説明します。
- 前の構成を新しい構成構造に移行します
- データベースのORDSをアップグレードします
レガシー構成の場所
以前のORDSリリース(21.4.x以前)で使用されていた構成ファイルの場所を指定します。場所がわからない場合は、以前のORDSリリース(21.4.x以前)を使用してコマンドを指定します。
java -jar /path/to/earlierRelease/ords.war configdir
java -jar /path/to/earlierRelease/ords.war configdir
INFO The config.dir value is /path/to/legacy/conf
前述の例では、/path/to/legacy/conf
が構成の場所です
- 対話型アップグレード
- サイレント・アップグレード
対話型アップグレード
ords --config <folder> install -i --legacy-config <folder> --log-folder
<folder>
次の2つの方法で、ORDSアプリケーションをレガシー構成から22.1バージョンにアップグレードできます。
表2-4 対話型のアップグレード・コマンド
コマンド・オプション | 説明 |
---|---|
--config <folder> |
移行した構成ファイルを格納する構成フォルダを指定します。 構成フォルダは、レガシー構成フォルダと同じ場所にしないでください。それ以外の場合は、エラーが発生します。 |
-i または--interactive |
対話型モードでコマンドを実行することを指定します。次に、情報の入力を求められます。 |
--legacy-config <folder> |
ORDS 21.4.x以前のリリースに使用した構成ファイルの場所を指定することを指定します。 |
--log-folder <folder> |
ログ・ファイルを格納する場所を指定することを指定します。 |
ords --config /path/to/new/conf install -i --legacy-config /path/to/legacy/conf --log-folder /path/to/logs
ORDS: Release 22.1 Production on Wed Apr 1 12:00:01 2022
Copyright (c) 2010, 2022, Oracle.
Configuration:
/path/to/new/conf
Oracle REST Data Services 22.1.0.rNNNNNN - Migrate Configuration
Migrating ORDS Configuration files located at /path/to/legacy/conf/ords
. . .
Legacy configuration files located /path/to/legacy/conf/ords are no longer being used to configure ORDS or its connection pools. Your migrated configuration files are now located at /path/to/new/conf
Oracle REST Data Services - Interactive Install
Enter a number to select the type of installation
[1] Install or upgrade ORDS in the database only
[2] Create or update a database pool and install/upgrade ORDS in the database
[3] Create or update a database pool only
Choose [1]:
オプション1を選択して、データベースのORDSをアップグレードします。移行されたデータベース・プールのリストが表示されます。apex
という名前のレガシー構成のデータベース・プールが移行され、名前がdefault
に変更されます。
Enter a number to select the database pool to use or specify the database connection
[1] default jdbc:oracle:thin:@//localhost:1521/orcl
[2] hr jdbc:oracle:thin:@//localhost:1521/pdb1
[3] Specify the database connection
Choose [1]:
アップグレードするデータベース・プールを選択します。次に、管理者のユーザー名とパスワードの入力を求められます。
Provide database user name with administrator privileges.
Enter the administrator username: sys
Enter the database password for SYS AS SYSDBA:
Connecting to database user: SYS AS SYSDBA url: jdbc:oracle:thin:@//localhost:1521/orcl
Retrieving information.
Connecting to database user: ORDS_PUBLIC_USER url:jdbc:oracle:thin:@//localhost:1521/orcl
Created folder /path/to/logs/
INFO Upgrading Oracle REST Data Services schema 21.4.2.rNNNNNN to version 22.1.0.rNNNNNN in ORCL
INFO Completed upgrade for Oracle REST Data Services version 22.1.0.rNNNNNN. Elapsed time: 00:00:02.585
INFO Log file written to /path/to/logs/ords_upgrade_2022-04-01_1200003_12345.log
これでアップグレード・プロセスが完了しました。
アップグレードするデータベース・プールが複数ある場合は、構成がすでに移行されているため、--legacy-config
オプションを除外してinstallコマンドを再度実行します。
ords --config /path/to/new/conf install -i --log-folder /path/to/logs
. . .
Enter a number to select the type of installation
[1] Install or upgrade ORDS in the database only
[2] Create or update a database pool and install/upgrade ORDS in the database
[3] Create or update a database pool only
Choose [1]:
オプション1を選択します
サイレント・アップグレード
- レガシー構成の場所
- 管理者ユーザーのデータベース・パスワード
Here
ドキュメントを使用して指定できます。テキスト・ファイルを使用する場合は、アップグレードが完了したら必ずテキスト・ファイルを削除してください。apex
という名前のレガシー構成のデータベース・プールが移行され、名前がdefault
に変更されます。
--database-pool <name>
オプションを省略すると、デフォルトのデータベース・プールを使用してアップグレードします。
テキスト・ファイルの使用
ords --config <folder> install --admin-user <user> --legacy-config <folder> --log-folder <folder>
--password-stdin < <text-file>
<text-file>と1 passwordを使用する場合の例
The text file contains 1 password for --admin-user <user>
ords --config /path/to/new/conf install --admin-user SYS --legacy-config /path/to/legacy/conf
--log-folder /path/to/logs --password-stdin < adminpwd.txt
Hereドキュメントの使用
パスワードにHere
ドキュメント(heredoc
とも呼ばれる)を使用して、標準入力をリダイレクトできます。heredoc
は、<<
リダイレクション演算子と、その後に続くデリミタ・トークンで構成されます。パスワードを含むスクリプトを使用している場合は、スクリプトを削除します。
ords --config <folder> install --admin-user <user> --legacy-config <folder> --log-folder <folder> --password-stdin << <delimiter-token>
> <password>
> <delimiter-token>
ords --config /path/to/new/conf install --admin-user SYS --legacy-config /path/to/legacy/conf --log-folder
/path/to/logs --password-stdin << EOF
> <password for admin-user>
> EOF
2.4 Oracle REST Data Servicesのアンインストール
この項では、ORDSスキーマのアンインストールに使用される対話型および非対話型のアンインストールCLIコマンドについて説明します。
2.4.1 対話型のアンインストールCLI
対話型アンインストールCLIでは、データベースからORDSスキーマ、ORDSプロキシ・ユーザーおよび関連データベース・オブジェクトをアンインストールするために必要な情報の入力が求められます。
- uninstallコマンドのみを指定します。例:
$ ords uninstall
ノート:
構成フォルダが環境変数を介して指定されているか、現行作業ディレクトリにデフォルト設定されていることを前提としています。 - オプション
--config <configuration folder>
の後に、uninstallコマンドを指定します。例:$ ords --config /path/to/config uninstall
オプションを指定します。--interactive
例:
$ ords --config /path/to/config uninstall --interactive
表2-5 対話型アンインストールのプロンプト
プロンプト番号 | プロンプト | 説明 |
---|---|---|
1. |
|
「データベース・プールを選択するための番号の入力」を参照してください |
2. |
|
「データベース接続タイプを選択するための番号の入力」を参照してください |
3. |
|
「データベース・ホスト名の入力」を参照してください |
4. |
|
「データベース・リスナー・ポートの入力」を参照してください |
5. |
|
「データベース・サービス名の入力」を参照してください |
6. |
|
「TNSの場所の入力」を参照してください |
7. |
|
「TNSネットワーク別名を選択するための番号の入力」を参照してください |
8. |
|
「カスタム・データベースURLの入力」を参照してください |
9. |
|
「管理者ユーザー名の入力」を参照してください |
10. | Enter the database password for SYS AS SYSDBA: |
「SYS AS SYSDBAのデータベース・パスワードの入力」を参照してください |
11. |
|
「ORDSをアンインストールするためのオプションの入力」を参照してください |
2.4.1.1 データベース・プールを選択するための番号の入力
- データベース・プールを選択すると、データベース接続タイプがバイパスされ、管理者のユーザー名とパスワードの入力が求められます。
- オプション2を選択すると、プロンプト番号2が表示されます。
ノート:
構成プールが構成フォルダに存在しない場合は、データベース接続タイプを入力するように求められます。2.4.1.5 データベース・サービス名の入力
- ORDS構成ファイルのサービス名設定。存在しない場合は次が行われます
ORACLE_PDB
環境変数がチェックされます。未定義の場合は次が行われますORACLE_SID
環境変数がチェックされます。未定義の場合は次が行われますorcl
がデフォルト値として使用されます。
2.4.1.6 TNSの場所の入力
tnsnames.ora
ファイルの場所を指定します。場所は、tnsnames.ora
ファイルがあるフォルダ、またはTNS接続用のtnsnames.ora
ファイルを含むzipファイルになります。
2.4.2 非対話型のアンインストールCLI
非対話型アンインストールCLIでは、データベースからORDSスキーマ、ORDSプロキシ・ユーザーおよび関連データベース・オブジェクトがアンインストールされます。
非対話型アンインストールCLIのコマンド・オプションを指定します。必要なオプション(接続のdb-port
など)がない場合、プロンプトは表示されません。かわりに、エラーが返されます。
2.4.2.1 入力リダイレクションの使用
この項では、Hereドキュメントまたはファイルを使用して標準入力をリダイレクトする方法について説明します。
ファイルへの標準入力のリダイレクト
パスワードを含むファイルにSTDINをリダイレクトします。次の例では、ファイルに1つのパスワードが含まれています。
$ cat adminpwd.txt
password
このパスワードはコマンドラインの管理者ユーザー(SYS
など)に属します。この例では、configフォルダおよびdb1プールがすでに存在することを前提としています。
ords --config /path/to/conf uninstall --db-pool db1 --admin-user SYS --log-folder /path/to/logs --password-stdin < adminpwd.txt
Hereドキュメントを使用した標準入力のリダイレクト
パスワードにHere
ドキュメント(heredocとも呼ばれる)を使用してSTDINをリダイレクトします。heredocは、<<
リダイレクション演算子と、その後に続くデリミタ・トークンで構成されます。
パスワードは個別の行に指定する必要があり、デリミタ・トークンで終了します。
例:
ords --config <configuration_folder> uninstall --db-pool <pool_name> --admin-user <username>
--db-hostname <host> --db-port <port_number> --db-servicename <service_name> --log-folder <log_folder>
--password-stdin << EOF
<password>
EOF
このパスワードはコマンドラインの管理者ユーザー(SYS
など)に属します。
ords --config /path/to/config uninstall --db-pool db1 --admin-user SYS --db-hostname
localhost --db-port 1521 --db-servicename orcl --log-folder /path/to/logs << EOF
<password>
EOF
2.4.2.2 アンインストールCLIのコマンド・オプション
表2-6 アンインストールCLIのコマンド・オプション
オプション | 説明 |
---|---|
--admin-user <USERNAME> |
データベースでORDSをインストール、アップグレード、修復またはアンインストールする権限を持つユーザーを指定します。 |
--bequeath-connect |
クライアントがネットワーク・リスナーをバイパスしてOracleデータベースに直接接続できるようにする継承接続を指定します。これは、クライアントがデータベースと同じサーバー上に存在する場合に発生します。 |
--config <CONFIG_PATH> |
構成ファイルを含むフォルダのパスを指定します。 |
--db-pool <POOL_NAME> |
データベース・プールの名前を指定します。 |
--db-custom-url <URL> |
ユーザー指定のカスタムURLを指定します。 |
-db-hostname <HOST> -
|
データベース・ホスト名を指定します。 |
--db-port <PORT> |
データベース・ポートを指定します。 |
|
データベース・サービス名を指定します。 |
--db-sid <SID> |
データベースSIDを指定します。 |
--db-tns-alias <ALIAS_NAME> |
tnsnames.ora ファイルに存在するtns別名を指定します。
|
-db-tns-dir <TNS_DIR> -
|
tnsnames.ora ファイルがあるフォルダを指定します。
|
--force |
ORDSの有効/無効なスキーマの数にかかわらず、ORDSをデータベースからアンインストールできることを指定します。 |
--help, -h |
コマンドの使用方法を示します。 |
--interactive, -i |
必要なすべての情報をユーザーに要求します。 |
--log-folder |
インストール、アップグレード、修復またはアンインストールのログをログ・フォルダに書き込みます。このオプションを省略すると、出力は標準出力に書き込まれます。 |
-password-stdin |
ORDSのインストールまたはアンインストール・コマンドを非対話的に実行する場合に指定します。このオプションを使用して、入力をファイルまたはhere ドキュメントにリダイレクトするときに標準入力からパスワード値を読み取ることができます。--password-stdin オプションとリダイレクト記号(「<」または「<<」)を省略すると、パスワードを必要とするコマンド・オプションに対してパスワードを入力するよう求められます。
|
--pdb-open-readwrite-all |
CDBに適用可能なオプションを指定します。 PDBのステータスがクローズまたは読取り専用である場合に、すべてのPDBを読取り/書込みモードでオープンするかどうかを指定します。 |
--pdb-open-readwrite <(PDB...)> |
CDBに適用可能なオプションを指定します。 ORDSをアンインストールするために、読取り/書込みで開かれる、読取り専用またはクローズのPDBのリストを指定します。 |
2.5 構成設定の更新
ORDS config
コマンドは、構成ファイル内のグローバル設定およびデータベース・プール固有の設定の内容を更新および編集するために使用されます。
config
コマンドは、サブコマンドのリストで構成されます。configコマンドには、設定を適用するデータベース・プールを識別する--db-pool
<POOL_NAME>
オプションがあります。このオプションを省略すると、デフォルトのデータベース・プール設定が更新されます。
ords config [OPTIONS] [SUB-COMMAND]
- オプション:
--db-pool <string>
: 構成するデータベース接続プールの名前-h, --help
: コマンドの使用情報を表示します
- サブコマンド:
delete
、get
、info
、list
、secret
、set
およびuser
info
指定されたキーの説明を示し、その目的を説明します。それが機密値であるかどうか、およびデフォルト値を示します。
例: ords config info <KEY>
set
config
キーを値に設定します。設定をグローバル・レベルで設定する場合は、--global
オプションを使用します。
例: ords config set [--global] <KEY> <VALUE>
secret
機密値を設定します(接続プールのパスワードなど)。ords config secret
を使用して、機密値を設定します。一部の値は機密です(例: db.password
)。Oracle Secure Coding Standardsに従って、このような値をコマンドライン引数として渡さないようにしてください。値の漏洩につながるためです(ps
出力に含められます)。
例: ords config secret --password-stdin <KEY> < <file>
ノート:
機密値に対してords config set
を実行しようとすると、エラーが返されます。
非対話型の例:
--password-stdin
オプションが指定されている場合、値はstdin
から読み取られます。
例:
ords config secret --password-stdin db.password < secret.txt
対話型の例
--password-stdin
が指定されていない場合、ユーザーはシークレット値の入力および確認を求められます。
例:
ords config secret db.password
get
構成値をstdoutにエコーします。値がシークレットの場合、その値はテキスト******
に置き換えられます。シークレットのプレーン・テキストを表示する場合は、--secret
引数を使用します。
例: ords config get [--global] [--secret] <KEY>
list
プール設定およびグローバル設定に対して明示的に構成された値をすべて表示します。シークレット値は、テキスト******
に置き換えられます。-–include-defaults
を使用して、デフォルト値を含むすべての設定をリストします。
例: ords config list [--include-defaults]
Setting
: 設定の名前Value
: 設定の値Source
: グローバル/プール固有の設定の場所
たとえば、出力は次のようになります。
Configuration: /path/to/conf/
Database pool: default
Setting Value Source
------------------- --------------- ------
db.connectionType basic Pool
db.hostname localhost Pool
db.password ****** Pool Wallet
db.port 1521 Pool
db.servicename orcl Pool
db.username ORDS_PUBLIC_USER Pool
feature.sdw true Pool
restEnabledSql.active true Pool
Default
: 設定のデフォルト値を使用しますGlobal
: 値はglobal/settings.xml構成ファイルで指定されますPool
:値はプールで明示的に構成されますPool Wallet
:(機密)値はプール・ウォレットで明示的に構成されます
user delete
構成からキーを削除します。
例: delete [--global]
user add
資格証明ファイルにユーザーとそのパスワードおよびロールを追加します。そのユーザーがすでに存在する場合は更新されます。
非対話型
STDINから読み取るためのオプション--password-stdin
を含めます。ユーザーのパスワード・ファイルが必要です。
ords config user add --password-stdin <USERNAME> roles <ROLES> < userpwd.txt
対話型
--password-stdin
オプションを省略すると、パスワードの入力を求められます。
ords config user add <USERNAME> roles <ROLES>
Enter the password:
Confirm password:
user delete
ords config user delete <USERNAME>
指定されたユーザーを削除します。
user get
ords config user get <USERNAME>
指定されたユーザーを取得します。
user list
ords config user list
資格証明ファイル内のユーザーをリストします。
関連項目: