プライマリ・コンテンツに移動
Oracle® Application Expressインストレーション・ガイド
リリース5.0
E67395-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

4 Application ExpressのインストールとOracle REST Data Servicesの構成

このセクションでは、Oracle Technology NetworkからZIPファイルをダウンロードし、Oracle REST Data Servicesをダウンロードとインストールして、Oracle Application Expressをインストールする方法について説明します。この手順は、新規インストールとアップグレード・インストールの両方に該当します。


関連項目:

「Webリスナーの要件」『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の、Oracle REST Data ServicesとOracle Application Expressの構成に関する項、および『Oracle Application Express管理ガイド』の、完全開発環境でのレポート印刷の構成に関する項

4.1 Oracle Databaseの要件

Oracle Application Expressリリース5.0には、Oracle Databaseリリース11.1.0.7以降が必要です(Enterprise EditionおよびExpressエディション(Oracle Database XE)を含む)。


関連項目:

『Oracle Databaseインストレーション・ガイド』および「Oracle Application Expressのインストール要件」

4.2 Oracle REST Data Servicesの要件

Oracle Application Express release 5.0にはOracle REST Data Servicesリリース2.0以上が必要です。

4.3 Oracle Application Expressへのパッチ適用について

すでにOracle Application Expressを実行している場合は、Oracle Technology Networkの「Oracle Application Express」ページでOracle Application Expressのパッチ・セットのリリースまたは後続リリースについて確認します。

http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html

4.4 Oracle Application Expressのインストール前タスクの実行

Oracle Application Expressをインストールする前に、次のステップを実行することをお薦めします。

  1. Oracle Application Expressのすべてのインストール要件を確認して満たします。「Oracle Application Expressのインストール要件」を参照してください。

  2. Oracle Application Expressをアクティブに使用していて、現在のインストールをアップグレードする場合は、通常の順、または優先度の高い順に、Oracle Application Expressをインストールする予定のOracle Databaseインスタンスを停止します。Oracle Real Application Clusters(Oracle RAC)システムでは、各ノードのすべてのインスタンスを停止します。

    データベースを停止する代替方法は、以前のリリースのOracle Application Expressからインストールをアップグレードする際に、すべてのユーザーをOracle Application Expressにアクセスできないようにすることです。このオプションは、計画停止を使用できない高可用性の本番環境でのみお薦めします。他のすべてのシナリオでは、データベースを停止する必要があります。

    既存のインストールがOracle REST Data Servicesを使用している場合にOracle Application Expressへのアクセスを無効にするには、Oracle REST Data Servicesがデプロイされている、適切なアプリケーション・サーバーをシャットダウンします。

    Oracle Application Expressユーザーがアクセスできないようにした後、SYSとしてSQL*Plusにログインし、Oracle Application Expressがインストールされているデータベースに接続して、V$SESSIONを問い合せ、アップグレード処理を妨げるような長時間にわたり実行されているセッションが存在しないことを確認する必要があります。

  3. Oracle Databaseインストールをバックアップします。

    Oracle Application Expressをインストールする前に、現行のOracle Databaseインストールのバックアップを作成することをお薦めします。バックアップには、Oracle Database Recovery Manager(Oracle Databaseインストールに含まれる)を使用できます。

  4. ターゲット・データベースが含まれるOracle Databaseインスタンスを起動します。

    システムをバックアップした後で、ターゲットのOracle Databaseが含まれるOracleインスタンスを起動する必要があります。Webリスナーなど、他のプロセスは開始しないでください。ただし、リモート・インストールを実行している場合は、リモート・データベースのWebリスナーが起動されていることを確認します。


    注意:

    リモート・データベースに接続している場合は、そのWebリスナーを起動します。


関連項目:

『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』

4.5 Oracle Application Expressのダウンロードとインストール

この項では、Oracle Application Expressをダウンロードとインストールする方法について説明します。Oracle Application Expressをインストールする方法は、インストール先データベースのタイプによって異なります。詳細は、「Oracle Database 12cでのマルチテナント・アーキテクチャの使用」を参照してください。

4.5.1 Application Expressのダウンロードとインストール

Oracle Application Expressをインストールするには、次のステップを実行します。

  1. 開発が英語のみで行われるインストールの場合は、Oracle Application Expressのダウンロード・ページからファイルapex_5.0_en.zipをダウンロードします。開発が英語以外の言語でも行われる場合は、Oracle Application Expressのダウンロード・ページからapex_5.0.zipをダウンロードします。関連項目:

    http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html
    

    ご使用のリリースがこのマニュアルの発行時点より新しい場合、実際のファイル名が異なる場合があります。

  2. ダウンロードしたzipファイルを解凍します。

    • 英語のみの場合は、次のとおり、ディレクトリ名を変更せずにapex_5.0_en.zipを解凍します。

      • UNIXおよびLinuxの場合: $ unzip apex_5.0_en.zipを解凍します。

      • Windowsの場合: Windowsエクスプローラでファイルapex_5.0_en.zipをダブルクリックします。

    • 複数言語の場合は、ディレクトリ名を変更せずにapex_5.0.zipを解凍します。

      • UNIXおよびLinuxの場合: $ unzip apex_5.0.zip

      • Windowsの場合: Windowsエクスプローラでapex_5.0.zipファイルをダブルクリックします。


    注意:

    ファイルを解凍するディレクトリ・ツリーは深くならないようにし、空白を含むディレクトリの下には格納しないようにします。たとえば、Windowsの場合はC:\TEMPに解凍します。

  3. 作業ディレクトリをapexに変更します。

  4. 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
      
  5. デフォルト・プロファイルに対して既存のすべてのパスワード複雑性ルールを有効にします。詳細は、『Oracle Databaseセキュリティ・ガイド』の「パスワード保護の構成」を参照してください。

  6. 適切なインストール・オプションを選択します。

    完全開発環境ではアプリケーションを開発するため、アプリケーション・ビルダー環境へのすべてのアクセス権があります。ランタイム環境ではアプリケーションは変更できず、実行することができます。詳細は、「Oracle Application Expressランタイム環境の概要」を参照してください。

    使用可能なインストール・オプションは次のとおりです。

    • 完全開発環境。次の4つの引数を記載された順序どおりに渡し、apexins.sqlを実行します。

      @apexins.sql tablespace_apex tablespace_files tablespace_temp images
      

      各要素の意味は次のとおりです。

      • tablespace_apexは、Oracle Application Expressアプリケーション・ユーザーの表領域の名前です。

      • tablespace_filesは、Oracle Application Expressファイル・ユーザーの表領域の名前です。

      • tablespace_tempは、一時表領域または一時表領域グループの名前です。

      • images は、Oracle Application Expressイメージの仮想ディレクトリです。将来的にOracle Application Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/と定義します。

      例:

      @apexins.sql SYSAUX SYSAUX TEMP /i/
      

      注意:

      次のエラーが表示された場合にはSQL*Plusを終了し、SQL*Plusを起動する前に、作業ディレクトリを、インストール・ファイルを解凍した場所(例: WindowsではC:\TEMP)に変更します。

      SP2-0310: ファイル"apexins.sql"をオープンできません


    • ランタイム環境。次の引数を記載された順序どおりに渡し、apxrtins.sqlを実行します。

      @apxrtins.sql tablespace_apex tablespace_files tablespace_temp images
      

      各要素の意味は次のとおりです。

      • tablespace_apexは、Oracle Application Expressアプリケーション・ユーザーの表領域の名前です。

      • tablespace_filesは、Oracle Application Expressファイル・ユーザーの表領域の名前です。

      • tablespace_tempは、一時表領域または一時表領域グループの名前です。

      • images は、Oracle Application Expressイメージの仮想ディレクトリです。将来的にOracle Application Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/と定義します。

      例:

      @apxrtins.sql SYSAUX SYSAUX TEMP /i/
      

関連項目:

SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

Oracle Application Expressをインストールすると、3つの新しいデータベース・アカウントが作成されます。

  • APEX_050000: Oracle Application Expressのスキーマおよびメタデータを所有するアカウント。

  • FLOWS_FILES: Oracle Application Expressのアップロードされたファイルを所有するアカウント。

  • APEX_PUBLIC_USER - Oracle REST Data ServicesまたはOracle HTTP Serverおよびmod_plsqlを使用したOracle Application Expressの構成に使用する最小限の権限が付与されたアカウント。

RESTful Webサービスを構成した場合、次の追加アカウントが作成されます。

  • APEX_REST_PUBLIC_USER -Oracle Application Expressに格納されているRESTfulサービスの定義を呼び出す際に使用されるアカウント。

  • APEX_LISTENER - Oracle Application Expressに格納されているRESTfulサービスの定義を照会するために使用されるアカウント。

以前のリリースからアップグレードすると、FLOWS_FILESはすでに存在し、APEX_PUBLIC_USERが存在しない場合にはこれが作成されます。


関連項目:

Oracle Application Expressは、ファイル・システム上の書込み可能なディレクトリからインストールする必要があります。「インストール・セッションのログの確認」を参照してください。

4.5.2 インスタンス管理アカウントの作成または更新

この項では、インスタンス管理者アカウントを作成または更新する方法を説明します。


ヒント:

Oracle Application Expressの以前のリリースからアップグレードする場合は、この項をスキップしてください。アップグレード・シナリオでは、インスタンス管理者のアカウントとパスワードは保存され、前のリリースから継承されます。

4.5.2.1 インスタンス管理者の概要

インスタンス管理者は、ワークスペースのプロビジョニング、機能とインスタンス設定の構成、セキュリティの管理など、Oracle Application Expressインスタンス全体の管理を担当するスーパーユーザーです。管理タスクを実行するために、Oracle Application Express管理サービス・アプリケーションにサインインします。


関連項目:

『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービス」

4.5.2.2 apxchpwd.sqlについて

apxchpwd.sqlスクリプトを実行すると、インスタンス管理者アカウントを作成または更新できます。次のシナリオでは、apxchpwd.sqlスクリプトを実行する必要があります。

  • Oracle Application Expressの新規インストール - apxchpwd.sqlを実行して、インスタンス管理者アカウントとパスワードを作成します。

  • ランタイム環境の開発環境への変換 - apxchpwd.sqlを実行して、インスタンス管理者アカウント・パスワードを変更します。

  • インスタンス管理者パスワードの変更 - apxchpwd.sqlを実行して、既存のインスタンス管理者アカウントのパスワードを変更します。

  • インスタンス管理者アカウントのロック解除 - apxchpwd.sqlを実行して、既存のインスタンス管理者アカウントのロックを解除します。


ヒント:

Oracle Application Expressの前のリリースからアップグレードする場合、apxchpwd.sqlを実行する必要はありません。アップグレード・シナリオでは、インスタンス管理者のアカウントとパスワードは保存され、前のリリースから継承されます。

4.5.2.3 apxchpwd.sqlの実行

インスタンス管理者アカウントを作成または更新するには、次のステップを実行します。

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。

  2. 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
      
  3. apxchpwd.sqlを実行します。次に例を示します。

    @apxchpwd.sql
    

    画面に表示されるステップに従います。ユーザー名、パスワードおよび電子メール・アドレスを入力するように求められます。アカウントのユーザー名が存在しない場合は作成されます。


関連項目:

SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

4.5.3 プロセスの再起動

Oracle Application Expressをインストールした後で、インストールの開始前に停止したプロセスを再起動する必要があります。

4.5.4 APEX_PUBLIC_USERアカウントの構成

Oracle Application Expressを適切に動作させるには、APEX_PUBLIC_USERアカウントの正しい構成が重要です。

4.5.4.1 APEX_PUBLIC_USERアカウントについて

APEX_PUBLIC_USERアカウントは、新しいOracle Application Expressのインストール時にランダムなパスワードとともに作成されます。新しいインストール環境でデータベース・アクセス記述子(DAD)を構成するには、まず、このアカウントのパスワードを変更する必要があります。

4.5.4.2 APEX_PUBLIC_USERアカウントのロック解除


ヒント:

以前のリリースのOracle Application Expressからアップグレードする場合、このステップは不要です。

APEX_PUBLIC_USERアカウントをロック解除するには、次のステップを実行します。

  1. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。Oracle Application ExpressがCDBにインストールされた場合、CDB$ROOTに接続していることを確認してください。次に例を示します。

    • 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
      
  2. 次の文を実行します。

    ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK
    

4.5.4.3 APEX_PUBLIC_USERアカウントのパスワードの変更


ヒント:

以前のリリースのOracle Application Expressからアップグレードする場合、このステップは不要です。

APEX_PUBLIC_USERアカウントのパスワードを変更するには、次のステップを実行します。

  1. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。Oracle Application ExpressがCDBにインストールされた場合、CDB$ROOTに接続していることを確認してください。次に例を示します。

    • 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
      
  2. 次の文を実行します。

    ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_password
    

    new_passwordは、APEX_PUBLIC_USERに設定する新しいパスワードです。後続のセクションでDADを作成する場合に、このパスワードを使用します。

4.5.4.4 Oracle Database 11g以降でのパスワードの有効期限について

Oracle Database 11gのデフォルト・プロファイルでは、パラメータPASSWORD_LIFE_TIMEは180に設定されています。Oracle Database 11gおよびOracle Application Expressを使用している場合、これによりAPEX_PUBLIC_USERのパスワードは180日間で期限切れになります。このため、パスワードを変更するまで、Oracle Application Expressインスタンスが使用できなくなります。

この動作を回避するには、PASSWORD_LIFE_TIMEパラメータが無制限に設定されている別のプロファイルを作成し、APEX_PUBLIC_USERアカウントを変更して、これを新しいプロファイルに割り当てます。


関連項目:

プロファイルの作成およびデータベース・ユーザーへの割当ての詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください

4.6 Oracle REST Data Servicesのダウンロードとインストール

この項では、Oracle REST Data Servicesをダウンロードとインストールする方法について説明します。


関連項目:

Oracle REST Data Servicesインストレーションおよび開発者ガイド

4.6.1 Oracle REST Data Servicesのダウンロード


ヒント:

デフォルトで、Oracle REST Data Servicesを介してOracle Application Expressにアクセスするためのコンテキスト・ルートは/ordsです。Oracle Application Expressにアクセスするために/apexのコンテキスト・ルートを持つ場合、Oracle REST Data Servicesをインストールする前に、ords.warファイルの名前をapex.warに変更します。『Oracle REST Data Servicesインストレーションおよび開発者ガイド』」の、Oracle REST Data Servicesのインストールに関する項を参照してください。

Oracle REST Data Servicesをダウンロードするには、次の手順に従います。

  1. 最新リリースのOracle REST Data Servicesを次のサイトからダウンロードします。

    http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.html
    

    ファイル名のversion.numberに現在のリリース番号が反映されることに注意してください。

  2. ダウンロードしたZIPファイルを任意のディレクトリ(フォルダ)に解凍します。

    • UNIXおよびLinuxの場合: ords.version.number.zipを解凍します

    • Windowsの場合: Windowsエクスプローラでords.version.number.zipファイルをダブルクリックします

  3. イメージ・ディレクトリapex/imagesを、Oracle Application ExpressソフトウェアZIPからOracle REST Data Servicesがインストールされているファイル・システム上の場所にコピーします。

  4. 『Oracle REST Data Servicesインストレーションおよび開発者ガイド』を参照して、すべてのインストールと構成のステップに従い、完了します。

  5. Oracle Database 12cマルチテナント・アーキテクチャの場合は必ず、アクセスする特定のプラガブル・データベース(PDB)のサービス名を使用して接続を構成してください。URLでPDBを指定するようにOracle REST Data Servicesを構成している場合を除き、CDB$ROOTのサービス名は使用できません。詳細は、Oracle REST Data Servicesインストレーションおよび開発者ガイドを参照してください。

4.6.2 静的ファイル・サポートの構成

Oracle Application Expressを使用すると、アプリケーション開発者はアプリケーションに静的ファイルを含めることができます。静的ファイルは、ワークスペース、アプリケーション、プラグインまたはアプリケーション・テーマに関連付けることができます。Oracle REST Data ServicesをWebリスナーとして使用する場合、静的ファイルは、Oracle Application Expressに組み込まれたRESTfulサービス・モジュールを使用して提供されます。このため、RESTfulサービスが以前のリリースで構成されなかった場合、新規インストールおよびアップグレード・インストールでRESTfulサービスを構成する必要があります。

4.6.3 Oracle XML DBプロトコル・サーバーの無効化

以前は埋込みPL/SQLゲートウェイを使用していたが、現在はOracle REST Data Servicesを使用する場合は、Oracle XML DB Protocol Serverを無効にする必要があります。

Oracle XML DBプロトコル・サーバーを無効化するには、次のステップを実行します。

  1. 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
      
  2. 次のコマンドを実行します。

    EXEC DBMS_XDB.SETHTTPPORT(0);
    

4.6.4 リバース・プロキシやロード・バランサの内側にあるOracle REST Data Servicesの構成について

Oracle Application Expressがリバース・プロキシまたはロード・バランサの内側で実行されている場合、ユーザーのブラウザが認識した元のHTTPホスト名とプロトコルをApplication Expressエンジンに通信することが重要です。Application Expressエンジンはこの情報を使用して、HTMLレスポンスおよびHTTPリダイレクト内に、ユーザーのブラウザが正常に追随できる有効なURLを生成します。正確な構成ステップは、Java EEアプリケーション・サーバーにより異なります。たとえば、Oracle WebLogic Serverの場合、これはOracle WebLogic Server Proxy Plug-Inを使用して実行されます。詳細は、Java EEアプリケーション・サーバーのドキュメントを参照してください。

4.7 Oracle REST Data ServicesによるRESTfulサービスの構成

この項では、新規インストールでRESTfulサービスを構成する方法を説明します。

4.7.1 RESTfulサービスの構成について

Oracle Application Expressを新しくインストールする場合は、構成スクリプトapex_rest_config.sqlを実行してRESTfulサービスを構成します。構成すると、インスタンス管理者がこの機能の可用性を制御できます。インスタンス管理者がこのApplication ExpressインスタンスのRESTfulサービスを無効にした場合、このインスタンスではRESTfulサービスを使用できず、RESTfulサービスのアイコンも表示されません。『Oracle Application Express管理ガイド』の、インスタンスに対するRESTfulサービスの制御に関する項を参照してください。


注意:

RESTfulサービスにはOracle REST Data Services 2.0以上が必要です。Oracle Application Expressリリース5.0をアップグレードし、以前のリリースでRESTfulサービスが構成されていない場合、RESTfulサービスの構成は必須です。

4.7.2 RESTfulサービスの構成

Oracle Application ExpressでRESTfulサービスを構成するには、次のステップを実行します。

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。

  2. 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
  3. 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サービスの定義を呼び出す際に使用されるアカウント。

4.8 Oracle Database 11g以降のネットワーク・サービスの有効化

4.8.1 ネットワーク・サービスを有効化する必要があるタイミングと理由

Oracle Database 11gリリース1または2以上では、ネットワーク・サービスとの通信機能が、デフォルトで無効化されています。このため、Oracle Database 11gリリース1または2以上でOracle Application Expressを実行している場合は、新しいDBMS_NETWORK_ACL_ADMINパッケージを使用して、APEX_050000データベース・ユーザーにすべてのホストに対する接続権限を付与する必要があります。これらの権限を付与しないと、次の場合に問題が発生します。

  • Oracle Application Expressでアウトバウンド・メールを送信する。

    ユーザーはAPEX_MAILパッケージからメソッドをコールできますが、外部へ電子メールを送信するときに問題が発生します。

  • Oracle Application ExpressでWebサービスを使用する。

  • PDFレポートを印刷する。


ヒント:

このセクションで示されている例を実行するには、データベースのcompatible初期化パラメータが11.1.0.0.0以上に設定されている必要があります。デフォルトでは、11gまたは12cデータベースのパラメータは事前に適切に設定されますが、以前のバージョンから11gまたは12cにアップグレードされたデータベースのパラメータは適切に設定されない場合があります。データベース初期化パラメータの変更については、『Oracle Database管理者ガイド』の「Oracle Databaseの作成および構成」を参照してください。

4.8.2 Oracle Database 12c以前での接続権限の付与

次の例は、APEX_050000データベース・ユーザーにすべてのホストに対する接続権限を付与する方法を示しています。この例では、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続するとします。

DECLARE
  ACL_PATH  VARCHAR2(4000);
BEGIN
  -- Look for the ACL currently assigned to '*' and give APEX_050000
  -- the "connect" privilege if APEX_050000 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_050000',
     'connect') IS NULL THEN
      DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH,
     'APEX_050000', 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_050000', 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_050000
  -- the "connect" privilege if APEX_050000 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_050000',
     'connect') IS NULL THEN
      DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH,
     'APEX_050000', 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_050000', TRUE, 'connect');
  DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('local-access-users.xml','localhost');
END;
/
COMMIT;

4.8.3 Oracle Database 12cでの接続権限の付与

DBMS_NETWORK_ACL_ADMINのプロシージャCREATE_ACLASSIGN_ACLADD_PRIVILEGEおよびCHECK_PRIVILEGEは、Oracle Database 12cでは非推奨です。かわりにAPPEND_HOST_ACEを使用することをお薦めします。次の例は、APEX_050000データベース・ユーザーにすべてのホストに対する接続権限を付与する方法を示しています。この例では、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続するとします。

BEGIN
    DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
        host => '*',
        ace => xs$ace_type(privilege_list => xs$name_list('connect'),
                           principal_name => 'apex_050000',
                           principal_type => xs_acl.ptype_db));
END;
/

次の例は、ローカル・ネットワーク・リソースへのアクセス権について、より少ない権限を付与する方法を示しています。この例では、電子メールやレポート・サーバーなど、ローカル・ホストのサーバーへのアクセスのみを有効にします。

BEGIN
    DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
        host => 'localhost',
        ace => xs$ace_type(privilege_list => xs$name_list('connect'),
                           principal_name => 'apex_050000',
                           principal_type => xs_acl.ptype_db));
END;
/

4.8.4 無効なACLエラーのトラブルシューティング

前述のスクリプトの実行後に「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_050000ユーザーにACLを適用する必要があります。「Oracle Database 12cより前の接続権限の付与」を参照してください。

4.9 セキュリティ・タスクの実行

HTTPリクエストで、パスワードやその他の機密データがクリア・テキストで送信されることのないように、Secure Sockets Layer(SSL)を構成して使用することをお薦めします。SSLを使用しないと、パスワードが公開され、セキュリティが損なわれる可能性があります。

SSLは、業界標準のプロトコルです。RSA公開鍵暗号化と対称鍵暗号化を組み合せて使用することにより、認証、暗号化およびデータの整合性が提供されます。


関連項目:

『Oracle Application Express管理ガイド』の、HTTPプロトコル属性の構成に関する項

4.10 同時ジョブ数の制御

この項では、同時実行ジョブの数を指定する方法を説明します。

4.10.1 同時ジョブ数の管理について

JOB_QUEUE_PROCESSESには、同時に実行するジョブの最大数を指定します。Oracle Application Expressでは、トランザクションのサポートおよびSQLスクリプトでジョブが必要です。JOB_QUEUE_PROCESSESが有効でなく、正常に動作していない場合、スクリプトを正常に実行することはできません。

4.10.2 JOB_QUEUE_PROCESSESの数の表示

この項では、JOB_QUEUE_PROCESSESの数を表示する3つの方法について説明します。

4.10.2.1 インストール・ログ・ファイルでのJOB_QUEUE_PROCESSESの表示

Oracle Application Expressリリース4.2をインストールした後、またはOracle Application Expressをリリース4.2にアップグレードした後、JOB_QUEUE_PROCESSESの数をインストール・ログ・ファイルに表示できます。「インストール・セッションのログの確認」を参照してください。

4.10.2.2 Oracle Application ExpressでのJOB_QUEUE_PROCESSESの表示

「Application Expressのバージョン情報」ページにJOB_QUEUE_PROCESSESの数を表示することができます。

Application Expressのバージョン情報ページを表示するには、次の手順を実行します。

  1. Oracle Application Expressにサインインします。詳細は、「ワークスペースへのサインイン」を参照してください。

  2. ページの最上部にあるヘルプ・メニューを見つけます。

  3. 「ヘルプ」メニューから「バージョン情報」を選択します。

    Application Expressのバージョン情報ページが表示されます。ページの下部に、現在のJOB_QUEUE_PROCESSESの数が表示されます。

4.10.2.3 SQL*PlusによるJOB_QUEUE_PROCESSESの表示

次のSQLコマンドを実行して、SQL*PlusでJOB_QUEUE_PROCESSESの数を表示することができます。

SELECT VALUE FROM v$parameter WHERE NAME = 'job_queue_processes'

4.10.3 JOB_QUEUE_PROCESSESの数の変更

SQL*Plusで次のSQL文を実行して、JOB_QUEUE_PROCESSESの数を変更できます。

JOB_QUEUE_PROCESSESの数を更新するには、次のステップを実行します。

  1. 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
      
  2. SQL*Plusで次のSQL文を実行します。

    ALTER SYSTEM SET JOB_QUEUE_PROCESSES = <number>
    

    たとえば、ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 20を実行すると、JOB_QUEUE_PROCESSESは20に設定されます。

4.11 他の言語でのOracle Application Expressの実行について

Oracle Application Expressのインタフェースは、ドイツ語、スペイン語、フランス語、イタリア語、日本語、韓国語、ポルトガル語(ブラジル)、簡体字中国語および繁体字中国語に変換できます。Oracle Application Expressの単一インスタンスは、これらの言語変換されたバージョンを1つ以上実装してインストールできます。開発者は、画面またはホーム・ページのアプリケーション・ビルダーのログから言語を選択するのみで、インストールされたあらゆる言語におけるApplication Expressの開発環境を実行することを選択できます。

他の言語をインストールするには、後述の追加ファイルが含まれているapex_5.0.zipファイルを使用する必要があります。以前にapex_5.0_en.zipをダウンロードした場合、Oracle Application Expressを再インストールする必要はありません。apex_5.0zipをダウンロードして、apex_5.0_en.zipを解凍した同じディレクトリにファイルを解凍するのみです。

言語変換されたバージョンの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 

4.12 言語変換されたバージョンのOracle Application Expressのインストール

この項では、Oracle Application Expressの言語変換されたバージョンのインストールについて説明します。

4.12.1 言語変換されたバージョンのOracle Application Expressのインストールについて

初めてインストールを行う場合も以前のリリースからアップグレードする場合も、言語変換されたバージョンのOracle Application Expressを実行するには、load_lang.sqlスクリプトを実行する必要があります。

インストール・スクリプトは、配布を解凍したapex/builderのサブディレクトリに格納されます。これらのサブディレクトリは、言語コードで識別されます。たとえば、ドイツ語バージョンはapex/builder/de、日本語バージョンはapex/builder/jaに格納されます。各ディレクトリには、言語コード(たとえば、load_de.sqlload_ja.sql)で識別される、言語固有のロード・スクリプトが格納されます。

4.12.2 言語変換されたバージョンのOracle Application Expressのインストール

言語変換されたバージョンのOracle Application Expressをインストールするには、次のステップを実行します。

  1. 環境変数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
      
  2. インストールする必要がある言語に基づいて、apex/builderの下のディレクトリにナビゲートします。たとえば、ドイツ語の場合は、apex/builder/deにナビゲートします。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
      
  3. 次の文を実行します。

    ALTER SESSION SET CURRENT_SCHEMA = APEX_050000;
    
  4. 該当する言語固有のスクリプトを実行します。次に例を示します。

    @load_lang.sql
    

    langは特定の言語です。たとえば、ドイツ語の場合はload_de.sql、日本語の場合はload_ja.sqlとなります。

4.13 ワークスペースの作成およびOracle Application Expressユーザーの追加

アプリケーションの開発やインストールの前に、ワークスペースを作成し、Oracle Application Expressユーザーを追加し、ワークスペースにサインインする必要があります。

4.13.1 ワークスペースとユーザーについて

JavaScriptを有効にしたWebブラウザを使用してワークスペースにログインし、Oracle Application Expressのホーム・ページにアクセスします。詳細は、「ブラウザの要件」を参照してください。

ワークスペースでは、オブジェクト、データおよびアプリケーションをプライベートに保持しながら、同一のOracle Application Expressのインストール内で複数のユーザーが作業できます。各ワークスペースには、一意のIDおよび名前が含まれます。インスタンス管理者は、Oracle Application Express管理サービス内にワークスペースを手動で作成するか、ユーザーにリクエストを送信してもらうことができます。Oracle Application Express管理サービスは、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションです。


関連項目:

『Oracle Application Express管理ガイド』のワークスペースの作成およびワークスペースと変更リクエストの管理に関する項

4.13.2 Oracle Application Express管理サービスへのアクセス

ワークスペースとユーザー・アカウントを手動で作成するには、Oracle Application Express管理サービスと呼ばれる、Oracle Application Expressインスタンス全体を管理するための個別のアプリケーションにサインインします。Oracle Application Express Administration Servicesには、インストール・プロセスで作成またはリセットされたADMINアカウントとパスワードを使用してサインインします。

Oracle Application Express管理サービスにアクセスするには、次のステップを実行します。

  1. Webブラウザで、Oracle Application Express管理サービス・アプリケーションにナビゲートします。


    ヒント:

    デフォルトで、Oracle REST Data Servicesを介してOracle Application Expressにアクセスするためのコンテキスト・ルートは/ordsです。Oracle Application Expressにアクセスするために/apexのコンテキスト・ルートを持つ場合、Oracle REST Data Servicesをインストールする前に、ords.warファイルの名前をapex.warに変更します。『Oracle REST Data Servicesインストレーションおよび開発者ガイド』」の、Oracle REST Data Servicesのインストールに関する項を参照してください。

    設定では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の構成時に定義されるサービス名です。

  2. サインイン・ページで、次のステップを実行します。

    設定によっては、初めてログインするときにパスワードの変更を要求される場合があります。


関連項目:

『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービス」。

4.13.3 ワークスペースの手動作成

ワークスペースを手動で作成するには、Oracle Application Express管理サービスと呼ばれる個別のアプリケーションにサインインします。Oracle Application Express Administration Servicesには、インストール・プロセスで作成またはリセットされたADMINアカウントとパスワードを使用してサインインします。

Oracle Application Expressのワークスペースを手動で作成するには、次のステップを実行します。

  1. Oracle Application Express管理サービスへのアクセス。「Oracle Application Express管理サービスへのアクセス」を参照してください。

    Oracle Application Express管理サービスが表示されます。次に、ワークスペースを作成します。

  2. 「ワークスペースの管理」をクリックします。

  3. 「ワークスペース・アクション」で、「ワークスペースの作成」をクリックします。

    ワークスペースの作成ウィザードが表示されます。

  4. 「ワークスペースの指定」で、次を入力します。

    1. ワークスペース名: 一意のワークスペース名を入力します。

    2. 「ワークスペースID」: 新しいワークスペースIDを自動的に生成させるために、「ワークスペースID」は空白のままにしておきます。ワークスペースIDは、100000より大きい正の整数にする必要があります。

    3. ワークスペースの説明: ワークスペースの説明を入力します。

    4. をクリックします。

  5. 「スキーマの指定」で、既存のスキーマを再利用するか、新しく作成するかを指定します。

    既存のスキーマを使用する場合

    1. 「既存のスキーマを再利用」で、「はい」を選択します。

    2. リストからスキーマを選択します。

    3. をクリックします。

    新しいスキーマを作成する場合

    1. 「既存のスキーマを再利用」で、「いいえ」を選択します。

    2. スキーマの名前とパスワードを入力します。

    3. 領域割当てを指定します。

    4. をクリックします。

  6. 「管理者の指定」で、ワークスペース管理者の情報を入力して、「次へ」をクリックします。

  7. 選択内容を確認して、「ワークスペースの作成」をクリックします。


関連項目:

『Oracle Application Express管理ガイド』の「Oracle Application Express管理サービス」。

4.13.4 Oracle Application Expressユーザーの作成

Oracle Application Expressのユーザー・アカウントを作成するには、次のステップを実行します。

  1. Oracle Application Express管理サービスへのアクセス。「Oracle Application Express管理サービスへのアクセス」を参照してください。

    Oracle Application Express管理サービスが表示されます。

  2. 「ワークスペースの管理」アイコンをクリックします。

  3. 「開発者とユーザーの管理」をクリックします。

  4. 「ユーザーの作成」をクリックします。

  5. 「ユーザー属性」に、適切な情報を入力します。*印が付いているフィールドは必須フィールドです。


    ヒント:

    特定の属性の詳細を表示するには、アイテム・ラベルをクリックします。ヘルプが利用できる場合は、アイテム・ラベル上にカーソルを重ねると、アイテム・ラベルが赤色に変わり、カーソルが矢印と疑問符に変わります。

  6. 「アカウント権限」で、次のステップを実行します。

    1. ワークスペース: リストからワークスペースを選択します。

    2. デフォルトのスキーマ: データの参照、アプリケーションの作成およびSQLスクリプトの実行に使用するデフォルト・スキーマを指定します。

      使用可能なスキーマが複数あるワークスペースを使用する場合、このスキーマがデフォルトになります。この設定でセキュリティは制御されず、ユーザーのプリファレンスのみが制御されます。

    3. 管理者ユーザー: このユーザーがワークスペースの管理者権限を持つかどうかを指定します。

      管理者はすべてのコンポーネントへのアクセス権が付与されます。また、管理者はユーザー・アカウント、グループおよび開発サービスを管理できます。インスタンス管理者によってオフにされていると、コンポーネントを使用できない場合があります。

    4. 開発者ユーザー: このユーザーが開発者権限を持つかどうかを指定します。

      開発者はアプリケーション・ビルダーまたはSQLワークショップ、あるいはその両方へのアクセス権を持っている必要があります。インスタンス管理者によって無効にされると、これらのコンポーネントは使用できないことがあります。

    5. アプリケーション・ビルダー・アクセス: 開発者がアプリケーション・ビルダーへのアクセス権を持つかどうかを決定します。

    6. SQLワークショップ・アクセス: 開発者がSQLワークショップへのアクセス権を持つかどうかを決定します。

    7. チーム開発アクセス: 開発者がチーム開発へのアクセス権を持つかどうかを決定します。

    8. アカウントの可用性の設定: 「ロック済」を選択すると、アカウントは使用できなくなります。「ロック解除済」を選択すると、アカウントを使用できるようになります。

      ユーザーが「ワークスペース・プリファレンス」に指定された許可されるログイン失敗の最大回数を超過すると、そのアカウントは自動的にロックされます。

  7. 「パスワード」で、次のステップを実行します。

    • パスワード: 大/小文字を区別してパスワードを入力します。

    • パスワードの確認: パスワードを再度入力します。

    • 初回使用時にパスワードの変更が必要: 「いいえ」を選択すると、ユーザーは期限が切れるまで同じパスワードを使用できます。「はい」を選択すると、ユーザーは初回のログイン時に、パスワードをすぐに変更するよう要求されます。

  8. 「ユーザーの作成」または「作成後、別のものの作成」をクリックします。

4.13.5 ワークスペースへのサインイン

資格証明(ワークスペース名、ユーザー名およびパスワード)を使用して、ワークスペースにサインインします。

ワークスペースにサインインするには、次のステップを実行します。

  1. Webブラウザで、Oracle Application Expressのサインイン・ページにナビゲートします。

    設定ではOracle REST Data Servicesを使用するため、次に進みます。

    http://hostname:port/apex/
    

    各要素の意味は次のとおりです。

    • hostnameは、Oracle REST Data Servicesがインストールされているシステムの名前です。

    • portは、Oracle REST Data Servicesの構成時に割り当てられるポート番号です。デフォルトのインストールでは、この番号は8080です。詳細は、Oracle REST Data Servicesインストレーションおよび開発者ガイドを参照してください。

    • apexは、Oracle REST Data Servicesの構成時に定義されるサービス名です。

    「サインイン」ページが表示されます。

  2. サインイン・ページで、次の用に入力します。

    • 作業領域: 作業領域の名前を入力します。

    • ユーザー名: ユーザー名を入力します。

    • パスワード- パスワードを大/小文字を区別して入力します。

  3. 「サインイン」をクリックします。

    設定によっては、初めてログインするときにパスワードの変更を要求される場合があります。


関連項目:

『Oracle Application Express管理ガイド』の「ワークスペースの作成」および「ワークスペースと変更リクエストの管理」を参照してください。

4.14 アップグレード・インストールのインストール後のタスクの実行

アップグレード・インストールが正常に実行され、すべてのアップグレード済アプリケーションが正常に機能していることを確認したら、以前のOracle Application Expressインストールからスキーマを削除する必要があります。

4.14.1 以前のOracle Application Expressインストールの削除について

以前のインストールのスキーマに関連付けられたデータベース・ユーザーは権限が付与されたユーザーです。不要になった場合は削除する必要があります。以前のインストールのスキーマの削除には、2つのステップがあります。最初に以前のインストールが存在することを確認して、次にスキーマを削除します。

4.14.2 以前のインストールが存在するかどうかの確認

以前のインストールが存在するかどうかを確認するには、次のステップを実行します。

  1. SQL*Plusを起動して、SYSとしてOracle Application Expressがインストールされているデータベースに接続します。次に例を示します。

    • 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 
      
  2. 次の問合せを実行します。

    SELECT username
      FROM dba_users 
     WHERE (  username LIKE 'FLOWS\_______' ESCAPE '\'
           OR username LIKE 'APEX\_______' ESCAPE '\' )
       AND username NOT IN ( SELECT schema
                               FROM dba_registry
                              WHERE comp_id = 'APEX' );
    

結果に書式がFLOWS_XXXXXXまたはAPEX_XXXXXX(XXXXXXは6つの数字を表す)のエントリが含まれる場合、それらのエントリは削除候補です。

4.14.3 以前のインストールのスキーマの削除

以前のインストールのスキーマを削除するには、次のステップを実行します。

  1. 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
      
  2. 次の例のような文を実行します。

    DROP USER APEX_040200 CASCADE;
    

4.14.4 Oracle Database 11g以降での無効なACLの修正

Oracle Database 11g以降を実行しており、以前のOracle Application Expressスキーマのネットワーク・サービスを有効化してある場合、「以前のOracle Application Expressインストールの削除について」のステップを実行した後に、無効なACLを修正する必要がある場合があります。

無効なACLを修正するには、次のステップを実行します。

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。

  2. 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
      
  3. 次のような文を実行します。

    EXEC DBMS_NETWORK_ACL_ADMIN.DELETE_PRIVILEGE('power_users.xml', 'FLOWS_030000');
    

4.15 パフォーマンスの最適化タスクについて

Webアプリケーションのパフォーマンスは、そのサイズおよび、イメージ、CSSおよびJavaScriptファイルなどの静的なコンテンツをブラウザがリクエストする頻度に大きく依存します。パフォーマンスを向上させるために、大部分のWebサーバーは、オン・ザ・フライHTTPレスポンス圧縮をサポートし、ブラウザが一度の要求でファイルをキャッシュできる長さを構成できるようにする設定を用意しています。HTTPレスポンス圧縮は通常gzipエンコーディングを使用して実装され、ブラウザ・ファイル・キャッシュはCache-Control HTTPレスポンス・ヘッダーの発行によって有効化されます。

レスポンス圧縮とブラウザ・ファイル・キャッシュを有効化する方法の詳細は、Webサーバーのドキュメントを参照してください。Oracle Application Express開発環境とOracle Application Expressアプリケーションで最適パフォーマンスを得るためには、仮想イメージ・ディレクトリ(たとえば、/i/)のファイル、およびデータベース・アクセス記述子からのレスポンスのgzip圧縮を有効化するほか、ブラウザが12時間以上にわたり仮想イメージ・ディレクトリからのファイルをキャッシュできるようにすることをお薦めします。

4.16 ランタイム環境と完全開発環境の間の変換

この項では、ランタイム環境とフル開発環境の間の変換方法について説明します。

4.16.1 ランタイム環境と完全開発環境の間の変換について

Oracle Application Expressランタイム環境では、アプリケーションを変更または編集する機能をサポートせずに本番アプリケーションを実行できます。含まれるのは、アプリケーションの実行に必要なパッケージのみです。このため、ランタイム環境はより堅牢な環境となります。管理用のWebインタフェースは用意されていません。

Oracle Application Expressランタイム環境は、SQL*PlusまたはSQL DeveloperおよびAPEX_INSTANCE_ADMIN APIを使用して管理します。


関連項目:

「Oracle Application Expressランタイム環境について」および『Oracle Application Express管理ガイド』のエクスポートされたアプリケーションのランタイム環境へのインストールに関する項

4.16.2 完全開発環境へのランタイム環境の変換

Oracle Application Expressランタイム環境を完全開発環境に変換するには、次のステップを実行します。

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。

  2. 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
      
  3. apxdvins.sqlを実行します。次に例を示します。

    @apxdvins.sql
    
  4. 「インスタンス管理アカウントの作成または更新」の手順に従います。


関連項目:

SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。

4.16.3 ランタイム環境への完全開発環境の変換


ヒント:

完全開発環境をランタイム環境に変換する前に、すべてのWebシート・アプリケーションをエクスポートします。開発環境をランタイムに変換する際、既存のWebシート・データ・グリッドおよびレポートはすべてのワークスペースから削除されます。ランタイム環境を完全開発環境に戻しても、これらのWebシート・データ・グリッドまたはレポートはリストアされません。

Oracle Application Express完全開発環境をランタイム環境に変換するには、次のステップを実行します。

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。

  2. 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
      
  3. apxdevrm.sqlを実行します。次に例を示します。

    @apxdevrm.sql
    

関連項目:

SQL*Plusの詳細は、『Oracle Database PL/SQL言語リファレンス』を参照してください。