Oracle Application Expressは、Oracle Database 11gリリース1 (11.1)以上とともにデフォルトでインストールされます。この章では、Oracle Database 12c以上でスタンドアロンのマルチテナント・アーキテクチャにインストールされるOracle Application Expressのインストール後に必要な構成タスクについて説明します。
この章の内容は、新規インストールとアップグレード・インストールの両方に該当します。詳細は、「以前のリリースのOracle Application Expressからのアップグレード」を参照してください。
注意: この章は、マルチテナント・アーキテクチャおよび非CDB(またはスタンドアロン)アーキテクチャのOracle Database 12cへのインストールに適用されます。マルチテナント・アーキテクチャの詳細は、『Oracle Database概要12cリリース1 (12.1)』の「第VI部」を参照してください。Oracle Database 12cリリース1 (12.1)マルチテナント・アーキテクチャでのApplication Expressに関連する別のインストール例の詳細は、第3章「マルチテナント・アーキテクチャの使用」を参照してください。 |
すでにOracle Application Expressを実行している場合は、次のURLにあるOracle Technology Network (OTN)の「Oracle Application Express」ページでOracle Application Expressのパッチ・セットのリリースまたは後続リリースについて確認します。
http://www.oracle.com/technology/products/database/application_express/index.html
Oracle Database 12cリリース1 (12.1)にアップグレードしても、Oracle Application Expressにパッチは適用されません。Oracle Technology Network (OTN)からのOracle Application Expressのダウンロードおよびインストールの詳細は、Oracle Application Expressリリース4.2の『Oracle Application Expressインストレーション・ガイド』で「Oracle Technology Networkからのダウンロード」を参照してください。
Oracle Application Expressをインストールする前に、次のステップを実行することをお薦めします。
Oracle Application Expressのすべてのインストール要件を確認して満たします。「Oracle Application Expressのインストール要件」を参照してください。
既存のすべてのOracle DatabaseインスタンスおよびOracle関連のプロセスを停止します。
通常の順、または優先度の高い順に、Oracle Application Expressスキーマをインストールするデータベースを除く、既存のすべてのOracle Databaseインスタンスを停止します。Oracle Real Application Clusters(Oracle RAC)システムでは、各ノードのすべてのインスタンスを停止します。
Oracle Automatic Storage Management (ASM)を実行中の場合は、Oracle Application Expressをインストールするデータベースを除く、ASMを使用するすべてのデータベースを停止してから、ASMインスタンスを停止します。
Oracle DatabaseおよびASMインスタンスを停止するには、Windowsの「サービス」ユーティリティを使用します。このユーティリティは、Windowsの「コントロール パネル」または「管理ツール」メニュー(「スタート」→「プログラム」)から使用できます。Oracle Databaseの名前は、OracleService
から始まります。Oracle ASMサービスは、OracleASMService+ASM
という名前です。また、ASMが使用するOracleCSService
サービスも停止します。サービスの名前を右クリックし、メニューから「停止」を選択します。
Oracle Databaseインストールをバックアップします。
Oracle Application Expressをインストールする前に、現行のOracle Databaseインストールのバックアップを作成することをお薦めします。バックアップには、Oracle Database Recovery Manager(Oracle Databaseインストールに含まれる)を使用できます。
参照: 『Oracle Databaseバックアップおよびリカバリ・アドバンスト・ユーザーズ・ガイド』 |
ターゲット・データベースが含まれるOracle Databaseインスタンスを起動します。
システムをバックアップした後で、ターゲットのOracle Databaseが含まれるOracleインスタンスを起動する必要があります。Webリスナーなど、他のプロセスは開始しないでください。ただし、リモート・インストールを実行している場合は、リモート・データベースのWebリスナーが起動されていることを確認します。
実行するためには、Oracle Application ExpressにOracle REST Data Services、Oracle HTTP Serverおよびmod_plsql
または埋込みPL/SQLゲートウェイへのアクセス権が必要です。詳細は、「Webリスナーの選択について」を参照してください。
このセクションではOracle Application ExpressおよびOracle REST Data Servicesの実行時に必要なインストール後の構成タスクについて説明します。
Oracle Application ExpressはOracle Database 11g 以上とともに自動的にインストールされます。Oracle Databaseのインストールの詳細は、ご使用のプラットフォームの『Oracle Databaseインストレーション・ガイド』および「インストール前の推奨タスク」を参照してください。
Oracle REST Data Servicesをダウンロードするには、次の手順に従います。
最新リリースのOracle REST Data Servicesを次のサイトからダウンロードします。
http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.html
ファイル名のversion.number
に現在のリリース番号が反映されることに注意してください。
ダウンロードしたZIPファイルを任意のディレクトリ(フォルダ)に解凍します。
UNIXおよびLinuxの場合: ords.
version.number
.zip
を解凍します。
Windowsの場合: Windowsエクスプローラでords.
version.number
.zip
ファイルをダブルクリックします。
imagesディレクトリapex/images
を、Application ExpressソフトウェアZIPからOracle REST Data Servicesがインストールされているファイル・システム上の場所にコピーします。
Oracle REST Data Servicesのインストレーション・ガイドを参照し、その手順に従って、インストールおよび構成ステップを完了します。
Oracle Database 12cマルチテナント・アーキテクチャの場合は必ず、アクセスする特定のプラガブル・データベース(PDB)のサービス名を使用して接続を構成してください。URLでPDBを指定するようにOracle REST Data Servicesを構成している場合を除き、CDB$ROOT
のサービス名は使用できません。詳細は、Oracle REST Data Servicesインストレーションおよび開発者ガイドを参照してください。
Oracle Application Expressを新しくインストールする場合は、構成スクリプトapex_rest_config.sql
を実行してRESTfulサービスを構成します。このステップは任意であり、インスタンスでOracle REST Data ServicesとともにRESTfulサービスを使用する場合にのみ実行する必要があります。構成すると、インスタンス管理者がこの機能の可用性を制御できます。インスタンス管理者がこのApplication ExpressインスタンスのRESTfulサービスを無効にした場合、このインスタンスではRESTfulサービスを使用できず、RESTfulサービスのアイコンも表示されません。詳細は、『Oracle Application Express管理ガイド』のSQLワークショップの構成に関する説明を参照してください。
注意: RESTfulサービスにはOracle REST Data Servicesリリース2.0以上が必要です。 |
Oracle Application ExpressでRESTfulサービスを構成するには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/apex
に変更します。
SQL*Plusを起動し、Oracle Application Expressをインストールするデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
apex_rest_config.sql
を実行します。次に例を示します。
@apex_rest_config.sql
プロンプトが表示されたら、APEX_LISTENER
アカウントおよびAPEX_REST_PUBLIC_USER
アカウントのパスワードを入力します。Oracle Application ExpressでRESTfulサービスを構成する際は、2つのデータベース・アカウントが新しく作成されます。
APEX_LISTENER
- Oracle Application Expressに格納されているRESTfulサービスの定義を照会するために使用されるアカウント。
APEX_REST_PUBLIC_USER
-Oracle Application Expressに格納されているRESTfulサービスの定義を呼び出す際に使用されるアカウント。
Oracle Database 12cでは、ネットワーク・サービスとの通信機能が、デフォルトで無効化されています。このため、Oracle Database 12cでOracle Application Expressを実行している場合は、新しいDBMS_NETWORK_ACL_ADMIN
パッケージを使用して、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する必要があります。これらの権限を付与しないと、次の動作で問題が発生します。
Oracle Application Expressでアウトバウンド・メールを送信する。
ユーザーはAPEX_MAIL
パッケージからメソッドをコールできますが、アウトバンド・メールの送信時に問題が発生します。
Oracle Application ExpressでWebサービスを使用する。
PDFレポートを印刷する。
ヒント: このセクションで示されている例を実行するには、データベースのcompatible初期化パラメータが11.1.0.0.0以上に設定されている必要があります。デフォルトでは、Oracle Database 12cデータベースのパラメータは事前に適切に設定されていますが、以前のリリースからOracle Database 12cにアップグレードされたデータベースのパラメータは適切に設定されていない場合があります。データベース初期化パラメータの変更については、『Oracle Database管理者ガイド』の「Oracle Databaseの作成および構成」を参照してください。 |
次の例は、ご使用の環境およびOracle Database 12cマルチテナント・アーキテクチャに応じて修正してから各プラガブル・データベース(PDB)で実行する必要があります。
次の例は、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する方法を示しています。この例では、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続するとします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to '*' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to '*'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml', 'ACL that lets power users to connect to everywhere', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*'); END; / COMMIT;
次の例は、ローカル・ネットワーク・リソースへのアクセス権について、より少ない権限を付与する方法を示しています。この例では、電子メールやレポート・サーバーなど、ローカル・ホストのサーバーへのアクセスのみを有効にします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to 'localhost' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = 'localhost' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to 'localhost'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('local-access-users.xml', 'ACL that lets users to connect to localhost', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('local-access-users.xml','localhost'); END; / COMMIT;
前述のスクリプトを実行した後にORA-44416: 無効なACL
のエラーが表示された場合は、次の問合せを使用して、無効なACLを特定します。
REM Show the dangling references to dropped users in the ACL that is assigned REM to '*'. SELECT ACL, PRINCIPAL FROM DBA_NETWORK_ACLS NACL, XDS_ACE ACE WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL AND NACL.ACLID = ACE.ACLID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL);
次に、次のコードを実行してACLを修正します。
DECLARE ACL_ID RAW(16); CNT NUMBER; BEGIN -- Look for the object ID of the ACL currently assigned to '*' SELECT ACLID INTO ACL_ID FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; -- If just some users referenced in the ACL are invalid, remove just those -- users in the ACL. Otherwise, drop the ACL completely. SELECT COUNT(PRINCIPAL) INTO CNT FROM XDS_ACE WHERE ACLID = ACL_ID AND EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL); IF (CNT > 0) THEN FOR R IN (SELECT PRINCIPAL FROM XDS_ACE WHERE ACLID = ACL_ID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL)) LOOP UPDATE XDB.XDB$ACL SET OBJECT_VALUE = DELETEXML(OBJECT_VALUE, '/ACL/ACE[PRINCIPAL="'||R.PRINCIPAL||'"]') WHERE OBJECT_ID = ACL_ID; END LOOP; ELSE DELETE FROM XDB.XDB$ACL WHERE OBJECT_ID = ACL_ID; END IF; END; / REM commit the changes. COMMIT;
ACLの修正後、このセクションの最初のスクリプトを実行してAPEX_040200
ユーザーにACLを適用する必要があります。「接続権限の付与」を参照してください。
HTTPリクエストで、パスワードやその他の機密データがクリア・テキストで送信されることのないように、Secure Sockets Layer(SSL)を構成して使用することをお薦めします。SSLを使用しないと、パスワードが公開され、セキュリティが損なわれる可能性があります。SSLは、業界標準のプロトコルです。RSA公開鍵暗号化と対称鍵暗号化を組み合せて使用することにより、認証、暗号化およびデータの整合性が提供されます。
参照: Oracle Application Express管理ガイドの「HTTPSの必要性」 |
Oracle Application Expressのインタフェースは、ドイツ語、スペイン語、フランス語、イタリア語、日本語、韓国語、ポルトガル語(ブラジル)、簡体字中国語および繁体字中国語に変換できます。Oracle Application Expressの単一インスタンスは、これらの言語変換されたバージョンを1つ以上実装してインストールできます。実行時に、各ユーザーのWebブラウザの言語設定によって、特定の言語バージョンが使用されます。
言語変換されたバージョンのOracle Application Expressは、その特定言語をサポートするキャラクタ・セットが実装されたデータベースにロードする必要があります。言語変換されたバージョンのOracle Application Expressを、その言語の文字コードをサポートしないデータベースにインストールすると、インストールが正常に実行されなかったり、言語変換されたOracle Application Expressインスタンスが実行時に破損しているように見える場合があります。データベース・キャラクタ・セットAL32UTF8
は、言語変換されたすべてのバージョンのOracle Application Expressをサポートします。
言語変換されたバージョンのOracle Application Expressを手動でインストールするには、SQL*Plusを使用します。インストール・ファイルはAL32UTF8
にエンコードされます。
注意: 言語変換されたバージョンのOracle Application Expressをインストールするには、ターゲット・データベースのキャラクタ・セットにかかわらず、SQL*Plusを起動する前に環境変数NLS_LANG のキャラクタ・セット値をAL32UTF8 に設定する必要があります。 |
言語変換されたバージョンのOracle Application Expressのロードに有効なNLS_LANG
設定の例を次に示します。
American_America.AL32UTF8 Japanese_Japan.AL32UTF8
マルチテナント・アーキテクチャでは、各プラガブル・データベース(PDB)で次のスクリプトを実行する必要があります。
初めてインストールを行う場合も以前のリリースからアップグレードする場合も、言語変換されたバージョンのOracle Application Expressを実行するには、load_
lang
.sql
スクリプトを実行する必要があります。
インストール・スクリプトは$ORACLE_HOME/apex/builder
のサブ・ディレクトリに格納されており、これらのサブディレクトリは言語コードで識別されます。たとえば、ドイツ語バージョンはapex/builder/de
、日本語バージョンはapex/builder/ja
に格納されます。各ディレクトリには、言語コード(たとえば、load_de.sql
やload_ja.sql
)で識別される、言語固有のロード・スクリプトが格納されます。
言語変換されたバージョンのOracle Application Expressをインストールするには、次のステップを実行します。
環境変数NLS_LANG
をキャラクタ・セットAL32UTF8
に設定します。次に例を示します。
BourneシェルまたはKornシェルの場合:
NLS_LANG=American_America.AL32UTF8 export NLS_LANG
Cシェルの場合:
setenv NLS_LANG American_America.AL32UTF8
Windowsベースのシステムの場合:
set NLS_LANG=American_America.AL32UTF8
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の文を実行します。
ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
該当する言語固有のスクリプトを実行します。次に例を示します。
@load_lang.sql
lang
は特定の言語です。たとえば、ドイツ語の場合はload_de.sql
、日本語の場合はload_ja.sql
となります。
JOB_QUEUE_PROCESSES
には、同時に実行するジョブの最大数を指定します。Oracle Application Expressリリース4.2では、トランザクションのサポートおよびSQLスクリプトでジョブが必要です。JOB_QUEUE_PROCESSES
が有効でなく、正常に動作していない場合、スクリプトを正常に実行することはできません。
JOB_QUEUE_PROCESSES
の数を表示するには、3つの方法があります。
インストール・ログ・ファイル
Oracle Application Expressの「Application Expressのバージョン情報」ページ
SQL*Plus
Oracle Application Expressリリース4.2をインストールした後、またはOracle Application Expressをリリース4.2にアップグレードした後、JOB_QUEUE_PROCESSES
の数をインストール・ログ・ファイルに表示できます。「インストール・セッションのログの確認」を参照してください。
「Application Expressのバージョン情報」ページにJOB_QUEUE_PROCESSES
の数を表示することもできます。
「Application Expressのバージョン情報」ページを表示するには、次のステップを実行します。
Oracle Application Expressにログインします。詳細は、「Oracle Application Expressワークスペースへのログイン」を参照してください。
「管理」リストで、「Application Expressのバージョン情報」をクリックします。
ページの下部に、現在のJOB_QUEUE_PROCESSES
の数が表示されます。
SQL*Plusで次のSQL文を実行して、JOB_QUEUE_PROCESSES
の数を変更できます。
JOB_QUEUE_PROCESSES
の数を更新するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
SQL*Plusで次のSQL文を実行します。
ALTER SYSTEM SET JOB_QUEUE_PROCESSES = <number>
たとえば、ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20
を実行すると、JOB_QUEUE_PROCESSES
は20に設定されます。
Webブラウザを使用してワークスペースにログインし、Oracle Application Expressのホームページにアクセスします。使用するWebブラウザでJavaScript、HTML 4.0およびCSS 1.0規格がサポートされている必要があります。「ブラウザの要件」を参照してください。
ワークスペースは、複数のユーザーが、各自のオブジェクト、データおよびアプリケーションをそれぞれに保持しながら、同じOracle Application Expressインストール内で作業できる、仮想プライベート・データベースです。各ワークスペースには、一意のIDと名前があります。
Oracle Application Express管理者は、Oracle Application Express管理サービスにワークスペースを手動で作成するか、ユーザーにリクエストを送信してもらうことができます。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。『Oracle Application Express管理ガイド』の「ワークスペースの作成」および「ワークスペース変更リクエストの管理」を参照してください。
参照: Oracle Application Expressを初めて使用する場合は、『Oracle Database Application Express 2日で開発者ガイド』を参照してください。 |
Oracle Application Expressワークスペースを手動で作成するには、次のステップを実行します。
Oracle Application Express管理サービスへのログイン。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。インストール時に作成または再設定したADMIN
アカウントおよびパスワードを使用してログインします。
Webブラウザで、Oracle Application Express管理サービス・アプリケーションにナビゲートします。
設定でOracle REST Data Servicesを使用する場合、次に進みます。
http://hostname:port/apex/apex_admin
各要素の意味は次のとおりです。
hostname
は、Oracle REST Data Servicesがインストールされているシステムの名前です。
port
は、Oracle REST Data Servicesの構成時に割り当てられるポート番号です。デフォルトのインストールの場合、この番号は8080です。詳細は、Oracle REST Data Servicesインストレーションおよび開発者ガイドを参照してください。
apex
は、Oracle REST Data Servicesの構成時に定義されるサービス名です。
「ログイン」ページで、次の操作を行います。
「ユーザー名」に、admin
と入力します。
「パスワード」に、Oracle Application Expressのインストール時に指定したOracle Application Express管理者アカウントのパスワードを入力します。
「ログイン」をクリックします。
参照: 詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。 |
次に、ワークスペースを作成します。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「ワークスペースの作成」をクリックします。
「ワークスペースの作成」ウィザードが表示されます。
「ワークスペースの指定」に、ワークスペースの名前と説明を入力して、「次へ」をクリックします。
「スキーマの指定」で、Oracle Formsアプリケーションのスキーマを選択します。
「既存のスキーマを再利用」で、「はい」を選択します。
リストからスキーマを選択します。
「次へ」をクリックします。
「管理者の指定」に、ワークスペース管理者の情報を入力して、「次へ」をクリックします。
選択した内容を確認し、「作成」をクリックします。
Oracle Application Expressユーザー・アカウントを作成するには、次のステップを実行します。
前述のセクションで説明したように、Oracle Application Express管理サービスにログインします。詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「開発者とユーザーの管理」をクリックします。
「開発者とユーザーの管理」ページが表示されます。
「作成」をクリックします。
「ユーザーの作成/編集」ページが表示されます。
「ユーザー属性」で、適切な情報を入力します。アスタリスクが付いたフィールドは必須です。
ヒント: 特定の属性の詳細は、アイテム・ラベルをクリックしてください。ヘルプが利用できる場合は、アイテム・ラベル上にカーソルを重ねると、アイテム・ラベルが赤色に変わり、カーソルが矢印と疑問符に変わります。 |
「パスワード」に、このアカウントの大/小文字を区別したパスワードを入力します。
組織でパスワード・ポリシーを設定している場合は、パスワードが要件を満たすことを確認してください。
「開発者権限」で、適切な権限を選択します。
開発者ユーザー: 開発者またはワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。エンド・ユーザーの場合は、「いいえ」を選択します。
開発者は、アプリケーションおよびデータベース・オブジェクトの作成および変更、開発者アクティビティ、セッション・ステート、ワークスペースアクティビティおよびスキーマ・レポートの表示が可能です。
ワークスペース管理者ユーザー: ワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。開発者またはエンド・ユーザーの場合は、「いいえ」を選択します。
ワークスペース管理者は、開発者権限を持っていることに加え、ユーザー・アカウントの作成および編集、グループの管理、同じワークスペース内のユーザーのパスワードの変更および開発サービスの管理が可能です。
アカウントの可用性: ユーザーがこのアカウントにログインできるようにするには、「ロック解除済」を選択します。
初回使用時にパスワードの変更が必要: ユーザーが現在の一時パスワードでログインした直後にパスワードを変更する必要がある場合は、「はい」を選択します。それ以外の場合は、「いいえ」を選択します。
「ユーザーの作成」または「作成後、別のものの作成」をクリックします。
ワークスペースを作成した後、ログイン資格証明(ワークスペース名、ユーザー名およびパスワード)を使用してログインします。
参照: 『Oracle Application Express管理ガイド』の「ワークスペースの作成」および「ワークスペースと変更リクエストの管理」を参照してください。 |
ワークスペースにログインするには、次のステップを実行します。
Webブラウザで、Oracle Application Expressの「ログイン」ページにナビゲートします。
設定でOracle REST Data Servicesを使用する場合、次に進みます。
http://hostname:port/apex/apex_admin
各要素の意味は次のとおりです。
hostname
は、Oracle REST Data Servicesがインストールされているシステムの名前です。
port
は、Oracle REST Data Servicesの構成時に割り当てられるポート番号です。デフォルトのインストールの場合、この番号は8080です。詳細は、Oracle REST Data Servicesインストレーションおよび開発者ガイドを参照してください。
apex
は、Oracle REST Data Servicesの構成時に定義されるサービス名です。
「ログイン」ページが表示されます。
「ログイン」で、次の項目を入力します。
「ワークスペース」フィールド: ワークスペースの名前を入力します。
「ユーザー名」フィールド: ユーザー名を入力します。
「パスワード」フィールド: 大/小文字を区別したパスワードを入力します。
「ログイン」をクリックします。
設定によっては、初めてログインするときにパスワードの変更を要求される場合があります。
このセクションでは埋込みPL/SQLゲートウェイとともにOracle Application Expressを実行する際に必要なインストール後の構成タスクについて説明します。
Oracle Application ExpressはOracle Database 11g 以上とともに自動的にインストールされます。Oracle Databaseのインストールの詳細は、ご使用のオペレーティング環境向けの『Oracle Databaseインストレーション・ガイド』および「インストール前の推奨タスク」を参照してください。
新規またはアップグレード・インストールでは、構成スクリプトapex_epg_config.sql
を実行して、イメージおよび静的リソースをXDBリポジトリにロードし、使用可能にします。
apex_epg_config.sql構成スクリプトを実行するには、次の手順を実行します。
作業ディレクトリをORACLE_BASE\ORACLE_HOME\apex
(またはOracleホームを示すために使用される表記規則)に変更します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UnixおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、次の例に示すように、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name>;
次の例のようにファイル・システム・パスをOracleホームに渡してapex_epg_config.sql
を実行します。
@apex_epg_config /u01/app/product/12.1.0/dbhome_1
埋込みPL/SQLゲートウェイは、Oracle Database 12cとともにインストールされますが、Oracle Application Expressで使用する前に構成する必要があります。これを行うには、構成スクリプトを実行し、ANONYMOUS
アカウントのロックを解除する必要があります。
注意: Oracle XML DBプロトコル・サーバーおよび埋込みPL/SQLゲートウェイは、Oracle Database 11gより前のデータベースではサポートされていません。 |
新規インストールで構成スクリプトapxconf.sql
を実行し、埋込みPL/SQLゲートウェイを構成します。次に、ANONYMOUS
アカウントのロックを解除します。
注意: アップグレードの場合で、埋込みPL/SQLゲートウェイをすでに構成してあれば、このセクションをスキップして「Oracle Database 12cでのネットワーク・サービスの有効化」に進んでください。 |
apxconf.sql
構成スクリプトを実行するには、次のステップを実行します。
作業ディレクトリをORACLE_BASE\ORACLE_HOME\apex
(またはOracleホームを示すために使用される表記規則)に変更します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、次の例に示すように、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の例に示すように、apxconf.sql
を実行します。
@apxconf
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、CDB$ROOT
に設定します。
ALTER SESSION SET CONTAINER = CDB$ROOT;
次の文を入力し、ANONYMOUSアカウントのロックを解除します。
ALTER USER ANONYMOUS ACCOUNT UNLOCK;
ヒント: Oracle Database 12cマルチテナント・アーキテクチャで実行している場合、ANONYMOUSアカウントのロック解除はルート・コンテナで1回のみで済むため、ステップ5およびステップ6は、最初のPDBを構成する際に1回のみ実行する必要があります。 |
「Oracle Database 12cのネットワーク・サービスの有効化」から「ワークスペースの作成およびOracle Application Expressユーザーの追加」のセクションの適切なステップを実行します。
埋込みPL/SQLゲートウェイは、Oracle DatabaseのOracle XML DBプロトコル・サーバーで実行されます。対応するポート番号を確認すると、Oracle XML DBプロトコル・サーバーのHTTPが有効化されているかどうかを判断できます。
Oracle XML DBプロトコル・サーバーが実行されているHTTPポート番号を検証するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、検証するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の文を入力し、ポート番号を確認します。
SELECT DBMS_XDB.GETHTTPPORT FROM DUAL;
ポート番号に0
が戻された場合、Oracle XML DBプロトコル・サーバーは無効化されています。
有効化するには、「Oracle XML DBプロトコル・サーバーの有効化」のステップを実行します。
埋込みPL/SQLゲートウェイは、Oracle DatabaseのOracle XML DBプロトコル・サーバーで実行されます。
Oracle XML DBプロトコル・サーバーを有効化するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYSとして接続します。次に例を示します。
Windowsの場合は、次のようになります。
DRIVE_LETTER:\> sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合は、次のようになります。
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、有効化するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の文を実行します。
EXEC DBMS_XDB.SETHTTPPORT(port);
COMMIT;
次に例を示します。
EXEC DBMS_XDB.SETHTTPPORT(8080); COMMIT;
注意: 1024未満のポート番号は、多くのオペレーティング・システムで特権プロセス用に予約されています。1024未満のポート(80など)でXML DBプロトコル・サーバーを有効化するには、次のドキュメントを参照してください。
|
埋込みPL/SQLゲートウェイは、Oracle DatabaseのOracle XML DBプロトコル・サーバーで実行されます。
Oracle XML DBプロトコル・サーバーを無効化するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYSとして接続します。次に例を示します。
Windowsの場合は、次のようになります。
DRIVE_LETTER:\> sqlplus /nolog SQL> SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合は、次のようになります。
$ sqlplus /nolog
SQL> SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、無効化するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の文を実行します。
EXEC DBMS_XDB.SETHTTPPORT(0); COMMIT;
Oracle Database 12cでは、ネットワーク・サービスとの通信機能が、デフォルトで無効化されています。このため、Oracle Database 12cでOracle Application Expressを実行している場合は、新しいDBMS_NETWORK_ACL_ADMIN
パッケージを使用して、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する必要があります。これらの権限を付与しないと、次の動作で問題が発生します。
Oracle Application Expressでアウトバウンド・メールを送信する。
ユーザーはAPEX_MAIL
パッケージからメソッドをコールできますが、アウトバンド・メールの送信時に問題が発生します。
Oracle Application ExpressでWebサービスを使用する。
PDFレポートを印刷する。
ヒント: このセクションで示されている例を実行するには、データベースのcompatible初期化パラメータが11.1.0.0.0以上に設定されている必要があります。デフォルトでは、Oracle Database 12cデータベースのパラメータは事前に適切に設定されていますが、以前のリリースからOracle Database 12cにアップグレードされたデータベースのパラメータは適切に設定されていない場合があります。データベース初期化パラメータの変更については、『Oracle Database管理者ガイド』の「Oracle Databaseの作成および構成」を参照してください。 |
次の例は、ご使用の環境および12cマルチテナント・アーキテクチャに応じて修正してから各プラガブル・データベース(PDB)で実行する必要があります。
次の例は、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する方法を示しています。この例では、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYSとして接続するとします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to '*' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to '*'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml', 'ACL that lets power users to connect to everywhere', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*'); END; / COMMIT;
次の例は、ローカル・ネットワーク・リソースへのアクセス権について、より少ない権限を付与する方法を示しています。この例では、電子メールやレポート・サーバーなど、ローカル・ホストのサーバーへのアクセスのみを有効にします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to 'localhost' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = 'localhost' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to 'localhost'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('local-access-users.xml', 'ACL that lets users to connect to localhost', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('local-access-users.xml','localhost'); END; / COMMIT;
前述のスクリプトを実行した後にORA-44416: 無効なACL
のエラーが表示された場合は、次の問合せを使用して、無効なACLを特定します。
REM Show the dangling references to dropped users in the ACL that is assigned REM to '*'. SELECT ACL, PRINCIPAL FROM DBA_NETWORK_ACLS NACL, XDS_ACE ACE WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL AND NACL.ACLID = ACE.ACLID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL);
次に、次のコードを実行してACLを修正します。
DECLARE ACL_ID RAW(16); CNT NUMBER; BEGIN -- Look for the object ID of the ACL currently assigned to '*' SELECT ACLID INTO ACL_ID FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; -- If just some users referenced in the ACL are invalid, remove just those -- users in the ACL. Otherwise, drop the ACL completely. SELECT COUNT(PRINCIPAL) INTO CNT FROM XDS_ACE WHERE ACLID = ACL_ID AND EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL); IF (CNT > 0) THEN FOR R IN (SELECT PRINCIPAL FROM XDS_ACE WHERE ACLID = ACL_ID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL)) LOOP UPDATE XDB.XDB$ACL SET OBJECT_VALUE = DELETEXML(OBJECT_VALUE, '/ACL/ACE[PRINCIPAL="'||R.PRINCIPAL||'"]') WHERE OBJECT_ID = ACL_ID; END LOOP; ELSE DELETE FROM XDB.XDB$ACL WHERE OBJECT_ID = ACL_ID; END IF; END; / REM commit the changes. COMMIT;
ACLの修正後、このセクションの最初のスクリプトを実行してAPEX_040200
ユーザーにACLを適用する必要があります。「接続権限の付与」を参照してください。
HTTPリクエストで、パスワードやその他の機密データがクリア・テキストで送信されることのないように、Secure Sockets Layer(SSL)を構成して使用することをお薦めします。SSLを使用しないと、パスワードが公開され、セキュリティが損なわれる可能性があります。
SSLは、業界標準のプロトコルです。RSA公開鍵暗号化と対称鍵暗号化を組み合せて使用することにより、認証、暗号化およびデータの整合性が提供されます。
参照: Oracle Application Express管理ガイドの「HTTPSの必要性」 |
Oracle Application Expressのインタフェースは、ドイツ語、スペイン語、フランス語、イタリア語、日本語、韓国語、ポルトガル語(ブラジル)、簡体字中国語および繁体字中国語に変換できます。Oracle Application Expressの単一インスタンスは、これらの言語変換されたバージョンを1つ以上実装してインストールできます。実行時に、各ユーザーのWebブラウザの言語設定によって、特定の言語バージョンが使用されます。
言語変換されたバージョンのOracle Application Expressは、その特定言語をサポートするキャラクタ・セットが実装されたデータベースにロードする必要があります。言語変換されたバージョンのOracle Application Expressを、その言語の文字コードをサポートしないデータベースにインストールすると、インストールが正常に実行されなかったり、言語変換されたOracle Application Expressインスタンスが実行時に破損しているように見える場合があります。データベース・キャラクタ・セットAL32UTF8
は、言語変換されたすべてのバージョンのOracle Application Expressをサポートします。
言語変換されたバージョンのOracle Application Expressを手動でインストールするには、SQL*Plusを使用します。インストール・ファイルはAL32UTF8
にエンコードされます。
注意: 言語変換されたバージョンのOracle Application Expressをインストールするには、ターゲット・データベースのキャラクタ・セットにかかわらず、SQL*Plusを起動する前に環境変数NLS_LANG のキャラクタ・セット値をAL32UTF8 に設定する必要があります。 |
言語変換されたバージョンのOracle Application Expressのロードに有効なNLS_LANG
設定の例を次に示します。
American_America.AL32UTF8 Japanese_Japan.AL32UTF8
初めてインストールを行う場合も以前のリリースからアップグレードする場合も、言語変換されたバージョンのOracle Application Expressを実行するには、load_
lang
.sql
スクリプトを実行する必要があります。
インストール・スクリプトは、配布を解凍したapex/builder
のサブディレクトリに格納されます。これらのサブディレクトリは、言語コードで識別されます。たとえば、ドイツ語バージョンはapex/builder/de
、日本語バージョンはapex/builder/ja
に格納されます。各ディレクトリには、言語コード(たとえば、load_de.sql
やload_ja.sql
)で識別される、言語固有のロード・スクリプトが格納されます。
言語変換されたバージョンのOracle Application Expressをインストールするには、次のステップを実行します。
環境変数NLS_LANG
をキャラクタ・セットAL32UTF8
に設定します。次に例を示します。
BourneシェルまたはKornシェルの場合:
NLS_LANG=American_America.AL32UTF8 export NLS_LANG
Cシェルの場合:
setenv NLS_LANG American_America.AL32UTF8
Windowsベースのシステムの場合:
set NLS_LANG=American_America.AL32UTF8
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の文を実行します。
ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
該当する言語固有のスクリプトを実行します。次に例を示します。
@load_lang.sql
lang
は特定の言語です。たとえば、ドイツ語の場合はload_de.sql
、日本語の場合はload_ja.sqlとなります。
JOB_QUEUE_PROCESSES
には、同時に実行するジョブの最大数を指定します。Oracle Application Expressリリース4.2では、トランザクションのサポートおよびSQLスクリプトでジョブが必要です。JOB_QUEUE_PROCESSES
が有効でなく、正常に動作していない場合、スクリプトを正常に実行することはできません。
JOB_QUEUE_PROCESSES
の数を表示するには、3つの方法があります。
インストール・ログ・ファイル
Oracle Application Expressの「Application Expressのバージョン情報」ページ
SQL*Plus
Oracle Application Expressリリース4.2をインストールした後、またはOracle Application Expressをリリース4.2にアップグレードした後、JOB_QUEUE_PROCESSES
の数をインストール・ログ・ファイルに表示できます。「インストール・セッションのログの確認」を参照してください。
「Application Expressのバージョン情報」ページにJOB_QUEUE_PROCESSES
の数を表示することもできます。
「Application Expressのバージョン情報」ページを表示するには、次のステップを実行します。
Oracle Application Expressにログインします。詳細は、「Oracle Application Expressワークスペースへのログイン」を参照してください。
「管理」リストで、「Application Expressのバージョン情報」をクリックします。
ページの下部に、現在のJOB_QUEUE_PROCESSES
の数が表示されます。
SQL*Plusで次のSQL文を実行して、JOB_QUEUE_PROCESSES
の数を変更できます。
JOB_QUEUE_PROCESSES
の数を更新するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
SQL*Plusで次のSQL文を実行します。
ALTER SYSTEM SET JOB_QUEUE_PROCESSES = <number
>
たとえば、ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20
を実行すると、JOB_QUEUE_PROCESSES
は20に設定されます。
埋込みPL/SQLゲートウェイでは、Oracle Databaseの共有サーバー・アーキテクチャを使用します。埋込みPL/SQLゲートウェイの使用時に良好なパフォーマンスを実現するには、データベース初期化パラメータSHARED_SERVERS
が適切な(0
でも1
でもない)値に設定されていることを確認します。同時ユーザーが少数の場合は、SHARED_SERVERS
の値に5
を使用することをお薦めします。
次に例を示します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
ALTER SYSTEM SET SHARED_SERVERS = 5 SCOPE=BOTH;
Webブラウザを使用してワークスペースにログインし、Oracle Application Expressのホームページにアクセスします。使用するWebブラウザでJavaScript、HTML 4.0およびCSS 1.0規格がサポートされている必要があります。「ブラウザの要件」を参照してください。
ワークスペースは、複数のユーザーが、各自のオブジェクト、データおよびアプリケーションをそれぞれに保持しながら、同じOracle Application Expressインストール内で作業できる、仮想プライベート・データベースです。各ワークスペースには、一意のIDと名前があります。
Oracle Application Express管理者は、Oracle Application Express管理サービスにワークスペースを手動で作成するか、ユーザーにリクエストを送信してもらうことができます。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。詳細は、『Oracle Application Express管理ガイド』の「ワークスペースの作成」および「ワークスペースリクエストの管理」を参照してください。
参照: Oracle Application Expressを初めて使用する場合は、『Oracle Database Application Express 2日で開発者ガイド』を参照してください。 |
Oracle Application Expressワークスペースを手動で作成するには、次のステップを実行します。
Oracle Application Express管理サービスへのログイン。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。インストール時に作成または再設定したADMIN
アカウントおよびパスワードを使用してログインします。
Webブラウザで、Oracle Application Express管理サービス・アプリケーションにナビゲートします。
ご使用の設定では埋込みPL/SQLゲートウェイが使用されているため、次にナビゲートします。
http://hostname:port/apex/apex_admin
各要素の意味は次のとおりです。
hostname
は、Oracle XML DBプロトコル・サーバーがインストールされているシステムの名前です。
port
は、Oracle XML DBプロトコル・サーバーのHTTPに割り当てられているポート番号です。デフォルトのインストールの場合、この番号は8080です。Oracle Database 12cマルチテナント・アーキテクチャを使用している場合は、各プラガブル・データベース(PDB)に個別のポート番号が割り当てられます。
apex
は、構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。
「ログイン」ページで、次の操作を行います。
「ユーザー名」に、admin
と入力します。
「パスワード」に、Oracle Application Expressのインストール時に指定したOracle Application Express管理者アカウントのパスワードを入力します。
「ログイン」をクリックします。
参照: 詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。 |
次に、ワークスペースを作成します。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「ワークスペースの作成」をクリックします。
「ワークスペースの作成」ウィザードが表示されます。
「ワークスペースの指定」に、ワークスペースの名前と説明を入力して、「次へ」をクリックします。
「スキーマの指定」で、Oracle Formsアプリケーションのスキーマを選択します。
「既存のスキーマを再利用」で、「はい」を選択します。
リストからスキーマを選択します。
「次へ」をクリックします。
「管理者の指定」に、ワークスペース管理者の情報を入力して、「次へ」をクリックします。
選択した内容を確認し、「作成」をクリックします。
Oracle Application Expressユーザー・アカウントを作成するには、次のステップを実行します。
前述のセクションで説明したように、Oracle Application Express管理サービスにログインします。詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「開発者とユーザーの管理」をクリックします。
「開発者とユーザーの管理」ページが表示されます。
「作成」をクリックします。
「ユーザーの作成/編集」ページが表示されます。
「ユーザー属性」で、適切な情報を入力します。アスタリスクが付いたフィールドは必須です。
ヒント: 特定の属性の詳細は、アイテム・ラベルをクリックしてください。ヘルプが利用できる場合は、アイテム・ラベル上にカーソルを重ねると、アイテム・ラベルが赤色に変わり、カーソルが矢印と疑問符に変わります。 |
「パスワード」に、このアカウントの大/小文字を区別したパスワードを入力します。
組織でパスワード・ポリシーを設定している場合は、パスワードが要件を満たすことを確認してください。
「開発者権限」で、適切な権限を選択します。
開発者ユーザー: 開発者またはワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。エンド・ユーザーの場合は、「いいえ」を選択します。
開発者は、アプリケーションおよびデータベース・オブジェクトの作成および変更、開発者アクティビティ、セッション・ステート、ワークスペースアクティビティおよびスキーマ・レポートの表示が可能です。
ワークスペース管理者ユーザー: ワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。開発者またはエンド・ユーザーの場合は、「いいえ」を選択します。
ワークスペース管理者は、開発者権限を持っていることに加え、ユーザー・アカウントの作成および編集、グループの管理、同じワークスペース内のユーザーのパスワードの変更および開発サービスの管理が可能です。
アカウントの可用性: ユーザーがこのアカウントにログインできるようにするには、「ロック解除済」を選択します。
初回使用時にパスワードの変更が必要: ユーザーが現在の一時パスワードでログインした直後にパスワードを変更する必要がある場合は、「はい」を選択します。それ以外の場合は、「いいえ」を選択します。
「ユーザーの作成」または「作成後、別のものの作成」をクリックします。
ワークスペースを作成した後、ログイン資格証明(ワークスペース名、ユーザー名およびパスワード)を使用してログインします。
参照: Oracle Application Express管理ガイドの「ワークスペースの作成」および「ワークスペースリクエストの管理」を参照してください。 |
ワークスペースにログインするには、次のステップを実行します。
Webブラウザで、Oracle Application Expressの「ログイン」ページにナビゲートします。
設定に埋込みPL/SQLゲートウェイを使用する場合は、次へ移動します。
http://hostname:port/apex
各要素の意味は次のとおりです。
hostname
は、Oracle XML DBプロトコル・サーバーがインストールされているシステムの名前です。
port
は、Oracle XML DBプロトコル・サーバーのHTTPに割り当てられているポート番号です。デフォルトのインストールの場合、この番号は8080です。Oracle Database 12cマルチテナント・アーキテクチャを使用している場合は、各PDBに個別のポート番号が割り当てられます。
apex
は、構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。
以前のリリースからアップグレードしたユーザーや、カスタム構成があるユーザーの場合は、この値はhtmldb
かその他の値にする必要があります。Oracle Application Express管理者にDADを確認します。
「ログイン」ページが表示されます。
「ログイン」で、次の項目を入力します。
「ワークスペース」フィールド: ワークスペースの名前を入力します。
「ユーザー名」フィールド: ユーザー名を入力します。
「パスワード」フィールド: 大/小文字を区別したパスワードを入力します。
「ログイン」をクリックします。
設定によっては、初めてログインするときにパスワードの変更を要求される場合があります。
このセクションでは、Oracle Database 12cで配布されたOracle HTTP Serverおよびmod_plsql
を構成する方法について説明します。
注意: このセクションでは、Oracleホーム・ディレクトリ(ORACLE_HTTPSERVER_HOME )にOracle HTTP Serverがインストールされていると想定します。 |
Oracle Application ExpressはOracle Database 11g 以上とともに自動的にインストールされます。Oracle Databaseのインストールの詳細は、ご使用のオペレーティング環境向けの『Oracle Databaseインストレーション・ガイド』および「インストール前の推奨タスク」を参照してください。
次の文がすべてtrueの場合、これらのインストール後のステップを実行します。
Oracle Database 12c以上とともにインストールされるOracle Application Expressのバージョンを使用している。
以前のリリースからのアップグレードでない。今回がOracle Application Expressの新規インストールである。
Oracle Database 12cで配布されたOracle HTTP Serverを実行している。
この項には次のトピックが含まれます:
注意: このセクションでは、Oracleホーム・ディレクトリ(ORACLE_HTTPSERVER_HOME )にOracle HTTP Serverがインストールされていると想定します。 |
最初に、Oracle Application ExpressのADMINアカウントのパスワードを変更します。マルチテナント・アーキテクチャでは、これは構成するプラガブル・データベース(PDB)でのみ実行する必要があり、CDB$ROOT
コンテナでは実行しないでください。
ヒント: 以前のリリースのOracle Application Expressからアップグレードする場合、このステップは不要です。 |
ADMIN
アカウントのパスワードを変更するには、次のステップを実行します。
作業ディレクトリをORACLE_BASE\ORACLE_HOME\apex
(またはOracleホームを示すために使用される表記規則)に変更します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
apxchpwd.sql
を実行します。次に例を示します。
@apxchpwd.sql
ADMINアカウントのパスワードの入力を求められたら入力します。
新規インストールでOracle HTTP Server for Oracle Application Expressを構成する場合、データベース・ユーザーAPEX_PUBLIC_USER
はロック解除されたアカウントである必要があります。データベース・ユーザーAPEX_PUBLIC_USER
のアカウントをロック解除するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK
DAD
ファイルにパスワードを指定するには、データベース・ユーザーAPEX_PUBLIC_USER
のパスワードを変更する必要があります。次のステップを実行してAPEX_PUBLIC_USER
データベース・ユーザーのパスワードを変更してください。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
SQL> PASSWORD APEX_PUBLIC_USER Changing password for APEX_PUBLIC_USER New password: password Retype new password: password
Oracle Database 12cのデフォルト・プロファイルでは、パラメータPASSWORD_LIFE_TIME
は180に設定されています。Oracle Database 12cおよびOracle Application Expressを使用している場合、これによりAPEX_PUBLIC_USER
のパスワードは180日間で期限切れになります。このため、パスワードを変更するまで、Oracle Application Expressインスタンスが使用できなくなります。
この動作を回避するには、PASSWORD_LIFE_TIME
パラメータが無制限に設定されている別のプロファイルを作成し、APEX_PUBLIC_USER
アカウントを変更して、新しいプロファイルを割り当てます。
パスワードが期限切れではないプロファイルをCDB以外に作成するには、次の手順を実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
SQL> create profile c##apex_pub_profile LIMIT PASSWORD_LIFE_TIME UNLIMITED; alter user APEX_PUBLIC_USER profile c##apex_pub_profile;
参照: プロファイルの作成およびデータベース・ユーザーへの割当ての詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。 |
パスワードが期限切れではないプロファイルをCDBに作成するには、次の手順を実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースのCDB$ROOTにSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
SQL> create profile c##apex_pub_profile LIMIT PASSWORD_LIFE_TIME UNLIMITED; alter user APEX_PUBLIC_USER profile c##apex_pub_profile;
参照: プロファイルの作成およびデータベース・ユーザーへの割当ての詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。 |
新規インストールをロードしているか、以前のリリースをアップグレードしているかにかかわらず、トップ・レベルのapex\images
ディレクトリからOracle HTTP Server用のOracleホームを含むファイル・システム上の場所に、images
ディレクトリをコピーする必要があります。
アップグレード中に、前のバージョンに戻すことができるように、Oracle Application Expressの既存のimagesディレクトリの名前を変更し、imagesのリリース番号を示すようにします。
ファイル・システム上でimages
ディレクトリを特定するには、次のファイルでテキスト別名/i/
を確認します。
Oracle9iリリース2で配布されたOracle HTTP Serverの場合: httpd.conf
ファイルを確認します。
Oracle Application Server 10gの場合: marvel.conf
またはdads.conf
ファイルを確認します。
Oracle Database 11gまたは12cで配布されたOracle HTTP Serverの場合: marvel.conf
またはdads.conf
ファイルを確認します。
imagesディレクトリのパスを特定したら、既存のimagesディレクトリをバックアップの場所へと名前を変更します。これによって、必要に応じて、以前のリリースに戻すことができます。
次のコマンド構文を使用してOracle DatabaseホームからOracle HTTP Serverホームのパスにapex\images
ディレクトリをコピーします。
Oracle Database 12cで配布されたOracle HTTP Serverの場合:
Windowsの場合:
xcopy /E /I ORACLE_HOME\apex\images ORACLE_HTTPSERVER_HOME\user_projects\domains\base_domain\images
UNIXおよびLinuxの場合:
cp -rf $ORACLE_HOME/apex/images ORACLE_HTTPSERVER_HOME/user_projects/domains/base_domain
前述の構文例では、次のとおりです。
ORACLE_HOME
は、Oracle Database 12cのOracleホームです。
ORACLE_HTTPSERVER_HOME
は、既存のOracle Application ServerまたはOracle HTTP ServerのOracleホームを示しています。
次に該当する場合は、ここに示すインストール後のステップを実行します。
Oracle HTTP Server 12cを実行している。
Oracle HTTP ServerがOracleホームにインストールされている。
注意: このマニュアルでは、ORACLE_HTTPSERVER_HOME にOracle HTTP Serverがインストールされていると想定します。 |
Oracle Application Expressを新しくインストールする場合は、dads.conf
ファイルを編集する必要があります。dads.conf
ファイルには、Oracle Application ExpressにアクセスするためのDAD情報が保存されています。
dads.conf
ファイルを編集するには、次のステップを実行します。
テキスト・エディタを使用してdads.conf
ファイルを開きます。
Oracle Database 12cで配布されたOracle HTTP Serverの場合:
Windowsの場合:
ORACLE_HTTPSERVER_HOME\user_projects\domains\base_domain\config\fmwconfig\components\OHS\instances\ohs1\mod_plsql\dads.conf
UNIXおよびLinuxの場合:
ORACLE_HTTPSERVER_HOME/user_projects/domains/base_domain/config/fmwconfig/components/OHS/instances/ohs1/mod_plsql/dads.conf
注意: 前述の例では、ohs1はOracle HTTP Serverインスタンスの名前を参照します。Oracle HTTP Server構成ウィザードの実行中のデフォルト名はohs1です。ohs1以外の名前に変更されている場合もあります。 |
dads.conf
ファイルで、ORACLE_HTTPSERVER_HOME
、host
、port
、service_name
およびapex_public_user_password
は、ご使用の環境に適した値に置き換えます。apex_public_user_password
は、「APEX_PUBLIC_USERデータベース・ユーザーのパスワードの変更」で変更したパスワードです。また、マルチテナント・アーキテクチャを構成している場合は、service_name
はPDBのサービス名であることが必要です。CDB$ROOT
コンテナのservice_name
であることはできません。
ここで示すパスは、単なる例です。dads.confファイルのパスは、「imagesディレクトリのコピー」に示されているファイル・システム・パスを参照している必要があります。さらに、マルチテナント・アーキテクチャでOracle Application Expressを構成している場合は、有効にするプラガブル・データベース(PDB)のサービス名を必ず使用してください。CDB$ROOT
コンテナのサービス名は使用しないでください。
Alias /i/ "ORACLE_HTTPSERVER_HOME/user_projects/domains/base_domain/images/" <Location /pls/apex> Order deny,allow PlsqlDocumentPath docs AllowOverride None PlsqlDocumentProcedure wwv_flow_file_mgr.process_download PlsqlDatabaseConnectString host:port:service_name ServiceNameFormat PlsqlNLSLanguage AMERICAN_AMERICA.AL32UTF8 PlsqlAuthenticationMode Basic SetHandler pls_handler PlsqlDocumentTablename wwv_flow_file_objects$ PlsqlDatabaseUsername APEX_PUBLIC_USER PlsqlDefaultPage apex PlsqlDatabasePassword apex_public_user_password PlsqlRequestValidationFunction wwv_flow_epg_include_modules.authorize Allow from all </Location>
PlsqlNLSLanguage
を含む行を検索します。
PlsqlNLSLanguage
設定で、DADの言語設定を判断します。データベース・キャラクタ・セットがAL32UTF8
であるかどうかにかかわらず、PlsqlNLSLanguage
値のキャラクタ・セット部分は、AL32UTF8
に設定されている必要があります。次に例を示します。
... PlsqlNLSLanguage AMERICAN_AMERICA.AL32UTF8 ...
変更を保存して、dads.conf
ファイルを閉じます。
Oracle HTTP Serverを停止して再起動するには、次の構文を使用してコマンドを入力します。ここでDOMAIN_HOME
はOracle HTTP Serverドメインへのパスです。
Linuxの場合:
$DOMAIN_HOME/bin/stopComponent.sh componentName
Windowsの場合は、次のようになります。
%DOMAIN_HOME%\bin\stopComponent.cmd componentName
デフォルトのインストールでは、componentName
はohs1ですが、Oracle HTTP Server構成ウィザードの実行中に変更されている場合もあります。
Oracle Database 12cリリース1 (12.1)では、デフォルトで、ネットワーク・サービスと対話する機能は無効になっています。このため、Oracle Database 12cリリース1 (12.1)でOracle Application Expressを実行している場合は、新しいDBMS_NETWORK_ACL_ADMIN
パッケージを使用して、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する必要があります。これらの権限を付与しないと、次の動作で問題が発生します。
Oracle Application Expressでアウトバウンド・メールを送信する。
ユーザーはAPEX_MAIL
パッケージからメソッドをコールできますが、アウトバンド・メールの送信時に問題が発生します。
Oracle Application ExpressでWebサービスを使用する。
PDFレポートを印刷する。
ヒント: このセクションで示されている例を実行するには、データベースのcompatible初期化パラメータが11.1.0.0.0以上に設定されている必要があります。デフォルトでは、Oracle Database 12cデータベースのパラメータは事前に適切に設定されていますが、以前のリリースからOracle Database 12cにアップグレードされたデータベースのパラメータは適切に設定されていない場合があります。データベース初期化パラメータの変更については、『Oracle Database管理者ガイド』の「Oracle Databaseの作成および構成」を参照してください。 |
次の例は、ご使用の環境およびOracle Database 12cマルチテナント・アーキテクチャに応じて修正してから各PDBで実行する必要があります。
次の例は、APEX_040200
データベース・ユーザーにすべてのホストに対する接続権限を付与する方法を示しています。この例では、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続するとします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to '*' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to '*'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml', 'ACL that lets power users to connect to everywhere', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*'); END; / COMMIT;
次の例は、ローカル・ネットワーク・リソースへのアクセス権について、より少ない権限を付与する方法を示しています。この例では、電子メールやレポート・サーバーなど、ローカル・ホストのサーバーへのアクセスのみを有効にします。
DECLARE ACL_PATH VARCHAR2(4000); BEGIN -- Look for the ACL currently assigned to 'localhost' and give APEX_040200 -- the "connect" privilege if APEX_040200 does not have the privilege yet. SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS WHERE HOST = 'localhost' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200', 'connect') IS NULL THEN DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 'APEX_040200', TRUE, 'connect'); END IF; EXCEPTION -- When no ACL has been assigned to 'localhost'. WHEN NO_DATA_FOUND THEN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('local-access-users.xml', 'ACL that lets users to connect to localhost', 'APEX_040200', TRUE, 'connect'); DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('local-access-users.xml','localhost'); END; / COMMIT;
前述のスクリプトを実行した後にORA-44416: 無効なACL
のエラーが表示された場合は、次の問合せを使用して、無効なACLを特定します。
REM Show the dangling references to dropped users in the ACL that is assigned REM to '*'. SELECT ACL, PRINCIPAL FROM DBA_NETWORK_ACLS NACL, XDS_ACE ACE WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL AND NACL.ACLID = ACE.ACLID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL);
次に、次のコードを実行してACLを修正します。
DECLARE ACL_ID RAW(16); CNT NUMBER; BEGIN -- Look for the object ID of the ACL currently assigned to '*' SELECT ACLID INTO ACL_ID FROM DBA_NETWORK_ACLS WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL; -- If just some users referenced in the ACL are invalid, remove just those -- users in the ACL. Otherwise, drop the ACL completely. SELECT COUNT(PRINCIPAL) INTO CNT FROM XDS_ACE WHERE ACLID = ACL_ID AND EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL); IF (CNT > 0) THEN FOR R IN (SELECT PRINCIPAL FROM XDS_ACE WHERE ACLID = ACL_ID AND NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME = PRINCIPAL)) LOOP UPDATE XDB.XDB$ACL SET OBJECT_VALUE = DELETEXML(OBJECT_VALUE, '/ACL/ACE[PRINCIPAL="'||R.PRINCIPAL||'"]') WHERE OBJECT_ID = ACL_ID; END LOOP; ELSE DELETE FROM XDB.XDB$ACL WHERE OBJECT_ID = ACL_ID; END IF; END; / REM commit the changes. COMMIT;
ACLの修正後、このセクションの最初のスクリプトを実行してAPEX_040200
ユーザーにACLを適用する必要があります。「接続権限の付与」を参照してください。
HTTPリクエストで、パスワードやその他の機密データがクリア・テキストで送信されることのないように、Secure Sockets Layer(SSL)を構成して使用することをお薦めします。SSLを使用しないと、パスワードが公開され、セキュリティが損なわれる可能性があります。
SSLは、業界標準のプロトコルです。RSA公開鍵暗号化と対称鍵暗号化を組み合せて使用することにより、認証、暗号化およびデータの整合性が提供されます。
参照: Oracle Application Express管理ガイドの「HTTPSの必要性」 |
Oracle Application Expressのインタフェースは、ドイツ語、スペイン語、フランス語、イタリア語、日本語、韓国語、ポルトガル語(ブラジル)、簡体字中国語および繁体字中国語に変換できます。Oracle Application Expressの単一インスタンスは、これらの言語変換されたバージョンを1つ以上実装してインストールできます。実行時に、各ユーザーのWebブラウザの言語設定によって、特定の言語バージョンが使用されます。
言語変換されたバージョンのOracle Application Expressは、その特定言語をサポートするキャラクタ・セットが実装されたデータベースにロードする必要があります。言語変換されたバージョンのOracle Application Expressを、その言語の文字コードをサポートしないデータベースにインストールすると、インストールが正常に実行されなかったり、言語変換されたOracle Application Expressインスタンスが実行時に破損しているように見える場合があります。データベース・キャラクタ・セットAL32UTF8
は、言語変換されたすべてのバージョンのOracle Application Expressをサポートします。
言語変換されたバージョンのOracle Application Expressを手動でインストールするには、SQL*Plusを使用します。インストール・ファイルはAL32UTF8
にエンコードされます。
注意: 言語変換されたバージョンのOracle Application Expressをインストールするには、ターゲット・データベースのキャラクタ・セットにかかわらず、SQL*Plusを起動する前に環境変数NLS_LANG のキャラクタ・セット値をAL32UTF8 に設定する必要があります。 |
言語変換されたバージョンのOracle Application Expressのロードに有効なNLS_LANG
設定の例を次に示します。
American_America.AL32UTF8 Japanese_Japan.AL32UTF8
初めてインストールを行う場合も以前のリリースからアップグレードする場合も、言語変換されたバージョンのOracle Application Expressを実行するには、load_
lang
.sql
スクリプトを実行する必要があります。
インストール・スクリプトは、配布を解凍したapex/builder
のサブディレクトリに格納されます。これらのサブディレクトリは、言語コードで識別されます。たとえば、ドイツ語バージョンはapex/builder/de
、日本語バージョンはapex/builder/ja
に格納されます。各ディレクトリには、言語コード(たとえば、load_de.sql
やload_ja.sql
)で識別される、言語固有のロード・スクリプトが格納されます。
言語変換されたバージョンのOracle Application Expressをインストールするには、次のステップを実行します。
環境変数NLS_LANG
をキャラクタ・セットAL32UTF8
に設定します。次に例を示します。
BourneシェルまたはKornシェルの場合:
NLS_LANG=American_America.AL32UTF8 export NLS_LANG
Cシェルの場合:
setenv NLS_LANG American_America.AL32UTF8
Windowsベースのシステムの場合:
set NLS_LANG=American_America.AL32UTF8
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
次の文を実行します。
ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
該当する言語固有のスクリプトを実行します。次に例を示します。
@load_lang.sql
lang
は特定の言語です。たとえば、ドイツ語の場合はload_de.sql
、日本語の場合はload_ja.sql
となります。
JOB_QUEUE_PROCESSES
には、同時に実行するジョブの最大数を指定します。Oracle Application Expressリリース4.2では、トランザクションのサポートおよびSQLスクリプトでジョブが必要です。JOB_QUEUE_PROCESSES
が有効でなく、正常に動作していない場合、スクリプトを正常に実行することはできません。
JOB_QUEUE_PROCESSES
の数を表示するには、3つの方法があります。
インストール・ログ・ファイル
Oracle Application Expressの「Application Expressのバージョン情報」ページ
SQL*Plus
Oracle Application Expressリリース4.2をインストールした後、またはOracle Application Expressをリリース4.2にアップグレードした後、JOB_QUEUE_PROCESSES
の数をインストール・ログ・ファイルに表示できます。「インストール・セッションのログの確認」を参照してください。
「Application Expressのバージョン情報」ページにJOB_QUEUE_PROCESSES
の数を表示することもできます。
「Application Expressのバージョン情報」ページを表示するには、次のステップを実行します。
Oracle Application Expressにログインします。詳細は、「Oracle Application Expressワークスペースへのログイン」を参照してください。
「管理」リストで、「Application Expressのバージョン情報」をクリックします。
ページの下部に、現在のJOB_QUEUE_PROCESSES
の数が表示されます。
SQL*Plusで次のSQL文を実行して、JOB_QUEUE_PROCESSES
の数を変更できます。
JOB_QUEUE_PROCESSES
の数を更新するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
SQL*Plusで次のSQL文を実行します。
ALTER SYSTEM SET JOB_QUEUE_PROCESSES = <number>
たとえば、ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20
を実行すると、JOB_QUEUE_PROCESSES
は20に設定されます。
PlsqlDatabasePassword
パラメータは、データベースへのログイン用のパスワードを指定します。dadTool.pl
ユーティリティを使用すると、dads.conf
ファイル内のパスワードを難読化できます。
dadTool.pl
ユーティリティは、次のディレクトリに格納されています。
UNIXベースおよびLinuxベースのシステムの場合:
ORACLE_BASE/ORACLE_HTTPSERVER_HOME/Apache/modplsql/conf
Windowsベースのシステムの場合:
ORACLE_BASE\ORACLE_HTTPSERVER_HOME\Apache\modplsql\conf
Webブラウザを使用してワークスペースにログインし、Oracle Application Expressのホームページにアクセスします。使用するWebブラウザでJavaScript、HTML 4.0およびCSS 1.0規格がサポートされている必要があります。「ブラウザの要件」を参照してください。
ワークスペースは、複数のユーザーが、各自のオブジェクト、データおよびアプリケーションをそれぞれに保持しながら、同じOracle Application Expressインストール内で作業できる、仮想プライベート・データベースです。各ワークスペースには、一意のIDと名前があります。
Oracle Application Express管理者は、Oracle Application Express管理サービスにワークスペースを手動で作成するか、ユーザーにリクエストを送信してもらうことができます。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。詳細は、『Oracle Application Express管理ガイド』の「ワークスペースの作成」および「ワークスペースリクエストの管理」を参照してください。
参照: Oracle Application Expressを初めて使用する場合は、『Oracle Database Application Express 2日で開発者ガイド』を参照してください。 |
Oracle Application Expressワークスペースを手動で作成するには、次のステップを実行します。
Oracle Application Express管理サービスへのログイン。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。インストール時に作成または再設定したADMIN
アカウントおよびパスワードを使用してログインします。
設定でApacheおよびmod_plsql
を使用する場合は、次のURLに移動します。
http://hostname:port/pls/apex/apex_admin
各要素の意味は次のとおりです。
hostname
は、Oracle HTTP Serverがインストールされるシステムの名前です。
port
は、Oracle HTTP ServerのHTTPに割り当てられているポート番号です。デフォルトのインストールの場合、この番号は7777です。
pls
は、mod_plsql
カートリッジを使用するためのインジケータです。
apex
は、mod_plsql
構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。
参照: 詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。 |
次に、ワークスペースを作成します。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「ワークスペースの作成」をクリックします。
「ワークスペースの作成」ウィザードが表示されます。
「ワークスペースの指定」に、ワークスペースの名前と説明を入力して、「次へ」をクリックします。
「スキーマの指定」で、Oracle Formsアプリケーションのスキーマを選択します。
「既存のスキーマを再利用」で、「はい」を選択します。
リストからスキーマを選択します。
「次へ」をクリックします。
「管理者の指定」に、ワークスペース管理者の情報を入力して、「次へ」をクリックします。
選択した内容を確認し、「作成」をクリックします。
Oracle Application Expressユーザー・アカウントを作成するには、次のステップを実行します。
前述のセクションで説明したように、Oracle Application Express管理サービスにログインします。詳細は、『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービスへのログイン」を参照してください。
「ワークスペースの管理」をクリックします。
「ワークスペースの管理」で、「開発者とユーザーの管理」をクリックします。
「開発者とユーザーの管理」ページが表示されます。
「作成」をクリックします。
「ユーザーの作成/編集」ページが表示されます。
「ユーザー属性」で、適切な情報を入力します。アスタリスクが付いたフィールドは必須です。
ヒント: 特定の属性の詳細は、アイテム・ラベルをクリックしてください。ヘルプが利用できる場合は、アイテム・ラベル上にカーソルを重ねると、アイテム・ラベルが赤色に変わり、カーソルが矢印と疑問符に変わります。 |
「パスワード」に、このアカウントの大/小文字を区別したパスワードを入力します。
組織でパスワード・ポリシーを設定している場合は、パスワードが要件を満たすことを確認してください。
「開発者権限」で、適切な権限を選択します。
開発者ユーザー: 開発者またはワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。エンド・ユーザーの場合は、「いいえ」を選択します。
開発者は、アプリケーションおよびデータベース・オブジェクトの作成および変更、開発者アクティビティ、セッション・ステート、ワークスペースアクティビティおよびスキーマ・レポートの表示が可能です。
ワークスペース管理者ユーザー: ワークスペース管理者としてこのユーザーを追加する場合は、「はい」を選択します。開発者またはエンド・ユーザーの場合は、「いいえ」を選択します。
ワークスペース管理者は、開発者権限を持っていることに加え、ユーザー・アカウントの作成および編集、グループの管理、同じワークスペース内のユーザーのパスワードの変更および開発サービスの管理が可能です。
アカウントの可用性: ユーザーがこのアカウントにログインできるようにするには、「ロック解除済」を選択します。
初回使用時にパスワードの変更が必要: ユーザーが現在の一時パスワードでログインした直後にパスワードを変更する必要がある場合は、「はい」を選択します。それ以外の場合は、「いいえ」を選択します。
「ユーザーの作成」または「作成後、別のものの作成」をクリックします。
ワークスペースを作成した後、ログイン資格証明(ワークスペース名、ユーザー名およびパスワード)を使用してログインします。
参照: Oracle Application Express管理ガイドの「ワークスペースの作成」および「ワークスペースリクエストの管理」を参照してください。 |
ワークスペースにログインするには、次のステップを実行します。
Webブラウザで、Oracle Application Expressの「ログイン」ページにナビゲートします。デフォルトでは、Oracle Application Expressは次の場所にインストールされます。
設定でOracle HTTP Server(Apache)およびmod_plsql
を使用する場合は、次のURLに移動します。
http://hostname:port/pls/apex
各要素の意味は次のとおりです。
hostname
は、Oracle HTTP Serverがインストールされるシステムの名前です。
port
は、Oracle HTTP ServerのHTTPに割り当てられているポート番号です。デフォルトのインストールの場合、この番号は7777です。Oracle HTTP Serverのインストールのポート番号に関する情報は、次のファイルで確認できます。
ORACLE_BASE\ORACLE_HOME\install\portlist.ini ORACLE_BASE\ORACLE_HTTPSERVER_HOME\Apache\Apache\conf\httpd.conf
ポート番号を変更しても、portlist.ini
ファイル内の設定は変更されないことに注意してください。このファイルで正確な情報を確認できるのは、インストール直後のみです。
pls
は、mod_plsql
カートリッジを使用するためのインジケータです。
apex
は、mod_plsql
構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。
以前のリリースからアップグレードしたユーザーや、カスタム構成があるユーザーの場合は、この値はhtmldb
かその他の値にする必要があります。Oracle Application Express管理者にDADを確認します。
「ログイン」ページが表示されます。
「ログイン」で、次の項目を入力します。
「ワークスペース」フィールド: ワークスペースの名前を入力します。
「ユーザー名」フィールド: ユーザー名を入力します。
「パスワード」フィールド: 大/小文字を区別したパスワードを入力します。
「ログイン」をクリックします。
設定によっては、初めてログインするときにパスワードの変更を要求される場合があります。
アップグレード・インストールが正常に実行され、すべてのアップグレード済アプリケーションが正常に機能していることを確認したら、以前のOracle Application Expressインストールからスキーマを削除する必要があります。
以前のインストールのスキーマに関連付けられたデータベース・ユーザーは権限が付与されたユーザーです。不要になった場合は削除する必要があります。以前のインストールのスキーマの削除には、2つのステップがあります。最初に以前のインストールが存在することを確認して、次にスキーマを削除します。
以前のインストールが存在するかどうかを確認するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースにSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の問合せを実行します。
SELECT username FROM dba_users WHERE (username LIKE 'FLOWS_%' OR USERNAME LIKE 'APEX_%') AND USERNAME NOT IN ( SELECT 'FLOWS_FILES' FROM DUAL UNION SELECT 'APEX_PUBLIC_USER' FROM DUAL UNION SELECT SCHEMA s FROM dba_registry WHERE comp_id = 'APEX');
結果に書式がFLOWS_
XXXXXX
またはAPEX_
XXXXXX
(XXXXXX
は6つの数字を表す)のエントリが含まれる場合、それらのエントリは削除候補です。
以前のインストールのスキーマを削除するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次の例のような文を実行します。
DROP USER FLOWS_030000 CASCADE;
Oracle Database 12cを実行しており、以前のOracle Application Expressスキーマのネットワーク・サービスを有効化してある場合、「以前のOracle Application Expressインストールの削除」のステップを実行した後に、無効なACLを修正する必要がある場合があります。
無効なACLを修正するには、次のステップを実行します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
Oracle Database 12cマルチテナント・アーキテクチャで実行している場合は、コンテナを、構成するプラガブル・データベース(PDB)に設定します。
ALTER SESSION SET CONTAINER = <PDB_name
>;
次のような文を実行します。
EXEC DBMS_NETWORK_ACL_ADMIN.DELETE_PRIVILEGE('power_users.xml', 'FLOWS_030000');
Oracle Application Expressランタイム環境では、本番アプリケーションを実行できます。含まれるのは、アプリケーションの実行に必要なパッケージのみです。このため、ランタイム環境はより堅牢な環境となります。管理用のWebインタフェースは用意されていません。
Oracle Application Expressランタイム環境は、SQL*PlusまたはSQL DeveloperおよびAPEX_INSTANCE_ADMIN
APIを使用して管理します。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のランタイム環境の管理に関する項を参照してください。
Oracle Application Expressランタイム環境を完全開発環境に変換するには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/apex
に変更します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
@apxdvins
参照: SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。 |
Oracle Application Expressランタイム環境を、Oracle Application ExpressがCDB$ROOT
にインストールされているOracle Databases 12cマルチテナント・アーキテクチャの完全な開発環境に変換するには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/apex
に変更します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
apxdvins_con.sql
を実行します。次に例を示します。
@apxdvins_con.sql
Oracle Database 12cの非CDB(スタンドアロン)で、Oracle Application Express完全開発環境をランタイム環境に変換するには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/apex
に変更します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
@apxdevrm
「ADMINアカウントのパスワードの変更」のステップに従います。
参照: SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。 |
Oracle Application Expressの完全な開発環境を、Oracle Application ExpressがCDB$ROOT
にインストールされているOracle Database 12cマルチテナント・アーキテクチャのランタイム環境に変換するには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/apex
に変更します。
SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
apxdevrm_con.sql
を実行します。次に例を示します。
@apxdevrm_con.sql
「ADMINアカウントのパスワードの変更」のステップに従います。