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

前
 
次
 

5 Application Expressのインストールと埋込みPL/SQLゲートウェイの構成

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

5.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のインストール要件」

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

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

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

5.3 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にアクセスできないようにすることです。このオプションは、計画停止を使用できない高可用性の本番環境でのみお薦めします。他のすべてのシナリオでは、データベースを停止する必要があります。

    既存のインストールが埋込みPL/SQLゲートウェイを使用している場合にOracle Application Expressへのアクセスを無効にするには、HTTPポートを0に設定することによって、Oracle XML DB Protocol Serverを無効にする必要があります。SQL*Plusを起動して、SYSとしてOracle Application Expressがインストールされているデータベースに接続して、次を実行します。

    EXEC DBMS_XDB.SETHTTPPORT(0);
    

    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バックアップおよびリカバリ・ユーザーズ・ガイド』

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

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

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

マルチテナントでないコンテナ・データベース(あるいは非CDB)に、またはプラガブル・データベース(PDB)にローカルに、Oracle Application Expressをインストールするには、この手順に従います。

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

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

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

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


ヒント:

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

5.4.2.1 インスタンス管理者の概要。

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


関連項目:

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

5.4.2.2 apxchpwd.sqlについて

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

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

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

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

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


ヒント:

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

5.4.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言語リファレンス』を参照してください。

5.4.3 プロセスの再起動

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

5.5 埋込みPL/SQLゲートウェイの構成

埋込みPL/SQLゲートウェイは、Oracle Database 11g以降とともにインストールされます。ただし、Oracle Application Expressで使用する前に構成する必要があります。埋込みPL/SQLゲートウェイを構成するには、構成スクリプトを実行して、ANONYMOUSアカウントのロックを解除します。


注意:

Oracle XML DBプロトコル・サーバーおよび埋込みPL/SQLゲートウェイは、Oracle Database 11gより前のデータベースではサポートされていません。

5.5.1 apex_epg_config.sql構成スクリプトの実行

構成スクリプトapex_epg_config.sqlを実行し、埋込みPL/SQLゲートウェイを構成します。次に、ANONYMOUSアカウントのロックを解除します。

apex_epg_config.sql構成スクリプトを実行するには、次のステップを実行します。

  1. 作業ディレクトリを、Oracle Application Expressソフトウェアを解凍した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. PDBを構成する場合は、次の文を入力します。

    ALTER SESSION SET CONTAINER = <PDB_NAME>;
    
  4. 次の例に示すとおり、Oracle Application Expressソフトウェアを解凍したベース・ディレクトリにファイル・システム・パスを渡すapex_epg_config.sqlを実行します。

    • Windowsの場合:

      @apex_epg_config.sql SYSTEM_DRIVE:\TEMP
      
    • UNIXおよびLinuxの場合:

      @apex_epg_config.sql /tmp
      
  5. 次の文を入力し、ANONYMOUSアカウントのロックを解除します。

    ALTER USER ANONYMOUS ACCOUNT UNLOCK;
    

5.5.2 以前のリリースからアップグレードする場合のimagesディレクトリの更新

Oracle Application Expressを以前のリリースからアップグレードする場合は、apex_epg_config.sqlスクリプトを実行してimagesディレクトリを更新する必要があります。


ヒント:

新規インストールの場合、この手順は不要です。前述のセクションで説明したように、apex_epg_config.sqlを実行すると、イメージがロードされます。

apex_epg_config.sqlスクリプトを実行するには、次のステップを実行します。

  1. 作業ディレクトリを、Oracle Application Expressソフトウェアを解凍した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. 次の例に示すとおり、Oracle Application Expressソフトウェアを解凍したベース・ディレクトリにファイル・システム・パスを渡すapex_epg_config.sqlを実行します。

    • Windowsの場合:

      @apex_epg_config.sql SYSTEM_DRIVE:\TEMP
      
    • UNIXおよびLinuxの場合:

      @apex_epg_config.sql /tmp
      

    ヒント:

    前述の例では、Windowsの場合はTEMP、UNIXまたはLinuxの場合はtmpというディレクトリにOracle Application Expressを解凍したことを前提としています。

5.5.3 Oracle XML DBプロトコル・サーバー・ポートの検証

埋込みPL/SQLゲートウェイは、Oracle DatabaseのOracle XML DBプロトコル・サーバーで実行されます。対応するポート番号を確認すると、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. 次の文を入力して、ポート番号を検証します。

    SELECT DBMS_XDB.GETHTTPPORT FROM DUAL;
    

    ポート番号に0が戻された場合、Oracle XML DBプロトコル・サーバーは無効化されています。

  3. 有効化するには、sectセクション「Oracle XML DBプロトコル・サーバーの有効化」のステップを実行します。

5.5.4 Oracle XML DBプロトコル・サーバーの有効化

埋込みPL/SQLゲートウェイは、Oracle DatabaseのOracle XML DBプロトコル・サーバーで実行されます。

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(port);
    

    次に例を示します。

    EXEC DBMS_XDB.SETHTTPPORT(8080);
    

注意:

1024未満のポート番号は、多くのオペレーティング・システムで特権プロセス用に予約されています。1024未満のポート(80など)でXML DB HTTPリスナーを有効化するには、次のドキュメントを参照してください。
  • 『Oracle XML DB開発者ガイド』のプロトコルを使用したリポジトリへのアクセスに関する項

  • 『Oracle Database Net Servicesリファレンス』のプロトコル・アドレスの構成およびポート番号の制限に関する項


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

Oracle Application Expressを使用すると、アプリケーション開発者はアプリケーションに静的ファイルを含めることができます。静的ファイルは、ワークスペース、アプリケーション、プラグインまたはアプリケーション・テーマに関連付けることができます。埋込みPL/SQLゲートウェイをWebリスナーとして使用する場合、静的ファイルをサポートするために必要な構成は、埋込みPL/SQLゲートウェイの構成の一環として実行されます。


関連項目:

新しいインストールの詳細は、「apex_epg_config.sql構成スクリプトの実行」、アップグレード・インストールの詳細は、「以前のリリースからアップグレードする場合のイメージ・ディレクトリの更新」を参照してください

5.5.6 リバース・プロキシやロード・バランサの内側にある埋込みPL/SQLゲートウェイの構成について

Oracle Application Expressがリバース・プロキシやロード・バランサの内側で実行される場合は、CGI環境変数PROTOCOLおよびHTTP_HOSTを設定します。埋込みPL/SQLゲートウェイの場合、次のPL/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. 次のPL/SQLブロックを実行します。

    BEGIN
     DBMS_EPG.set_dad_attribute (
     dad_name => 'APEX',
     attr_name => 'cgi-environment-list',
     attr_value => 'REQUEST_PROTOCOL=https');
     DBMS_EPG.set_dad_attribute (
     dad_name => 'APEX',
     attr_name => 'cgi-environment-list',
     attr_value => 'HTTP_HOST=external-name:external-port');
     commit;
    END;
    /
    

詳細は、Java EEアプリケーション・サーバーのドキュメントを参照してください。

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

5.6.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以上に設定されている必要があります。デフォルトでは、Oracle 11gデータベースのパラメータは事前に適切に設定されていますが、以前のリリースから11gまたは12cデータベースにアップグレードされたデータベースのパラメータは適切に設定されていない場合があります。データベースの初期化パラメータの変更の詳細は、Oracle Database管理者ガイドのOracle Databaseの作成と構成に関する項を参照してください。

5.6.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;

5.6.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;
/

5.6.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より前の接続権限の付与」を参照してください。

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

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

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


関連項目:

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

5.8 同時ジョブ数の制御

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

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

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

5.8.2 JOB_QUEUE_PROCESSESの数の表示

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

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

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

5.8.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の数が表示されます。

5.8.2.3 SQL*PlusによるJOB_QUEUE_PROCESSESの表示

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

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

5.8.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に設定されます。

5.9 他の言語での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 

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

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

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

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

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

5.10.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となります。

5.11 SHARED_SERVERSパラメータの構成について

埋込みPL/SQLゲートウェイでは、Oracle Databaseの共有サーバー・アーキテクチャを使用します。埋込みPL/SQLゲートウェイの使用時に良好なパフォーマンスを実現するには、データベース初期化パラメータSHARED_SERVERSが適切な(0でも1でもない)値に設定されていることを確認します。同時ユーザーが少数の場合は、SHARED_SERVERSの値に5を使用することをお薦めします。

次に例を示します。

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

    ALTER SYSTEM SET SHARED_SERVERS = 5 SCOPE=BOTH;
    

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

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

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

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

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


関連項目:

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

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

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

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

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

    ご使用の設定では埋込みPL/SQLゲートウェイが使用されているため、次にナビゲートします。

    http://hostname:port/apex/apex_admin
    

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

    hostnameは、Oracle XML DBプロトコル・サーバーがインストールされているシステムの名前です。

    portは、Oracle XML DB ProtocolサーバーのHTTPに割り当てられているポート番号です。デフォルトのインストールでは、この番号は8080です。Oracle Database 12cマルチテナント・アーキテクチャを使用している場合は、各プラガブル・データベース(PDB)に個別のポート番号が割り当てられます。

    apexは、構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。

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

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


関連項目:

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

5.12.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管理サービス」。

5.12.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. 「ユーザーの作成」または「作成後、別のものの作成」をクリックします。

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

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

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

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

    ご使用の設定では埋込みPL/SQLゲートウェイが使用されているため、次にナビゲートします。

    http://hostname:port/apex/
    

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

    • hostnameは、Oracle XML DBプロトコル・サーバーがインストールされているシステムの名前です。

    • portは、Oracle XML DB ProtocolサーバーのHTTPに割り当てられているポート番号です。デフォルトのインストールでは、この番号は8080です。Oracle Database 12cマルチテナント・アーキテクチャを使用している場合は、各プラガブル・データベース(PDB)に個別のポート番号が割り当てられます。

    • apexは、構成ファイルで定義されているデータベース・アクセス記述子(DAD)です。

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

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

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

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

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

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

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


関連項目:

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

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

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

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

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

5.13.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つの数字を表す)のエントリが含まれる場合、それらのエントリは削除候補です。

5.13.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;
    

5.13.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');
    

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

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

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

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

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

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

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

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


関連項目:

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

5.15.2 非CDBまたはローカルなPDBにおける完全開発環境へのランタイム環境の変換

Oracle Application Expressランタイム環境を、非CDB、またはローカルなPDBにおける完全開発環境に変換するには、次のステップを実行します。

  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言語リファレンス』を参照してください。

5.15.3 非CDBまたはローカルなPDBにおけるランタイム環境への完全開発環境の変換


ヒント:

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

非CDBまたはローカルなPDBにおけるランタイム環境に、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言語リファレンス』を参照してください。

5.15.4 CDBにおける完全開発環境へのランタイム環境の変換

CDBで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_con.sqlを実行します。次に例を示します。

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


関連項目:

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

5.15.5 完全開発環境のCDBにおけるランタイム環境への変換


ヒント:

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

CDBで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_con.sqlを実行します。次に例を示します。

    @apxdevrm_con.sql
    

関連項目:

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