6.3 APEXのダウンロードとインストール

Oracle APEXのダウンロードとインストールについて学習します。

Oracle APEXをインストールする方法は、インストール先データベースのタイプによって異なります。このトピックでは、ラップトップやデータ・センターなどの自己管理データベース、Database Cloud Service (DBaaS)やExadata Cloud Serviceなどの共同管理クラウド・データベースにOracle APEXをダウンロードしてインストールする方法について説明します。Autonomous DatabaseやOracle APEXアプリケーション開発 (APEXサービス)などの完全に管理されたクラウド・データベースでは、Oracle APEXが事前インストールされ、事前構成されています。詳細は、サービスのドキュメントを参照してください。

6.3.1 APEXのインストール

APEXのダウンロード・ページからZIPファイルをダウンロードしてOracle APEXをインストールします。

ヒント:

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

APEXをインストールするには:

  1. 開発を英語のみで実施するインストールの場合は、APEXのダウンロード・ページからファイルapex_22.2_en.zipをダウンロードします。開発を英語以外の言語でも実施する場合は、APEXのダウンロード・ページからapex_22.2.zipをダウンロードします。次を参照してください。

    https://www.oracle.com/tools/downloads/apex-downloads.html

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

  2. ダウンロードしたzipファイルを解凍します。
    • 英語のみの場合は、次のように、ディレクトリ名を変更せずにapex_22.2_en.zipを解凍します。

      • UNIXおよびLinuxの場合: $ unzip apex_22.2_en.zip
      • Windowsの場合: エクスプローラーでapex_22.2_en.zipファイルをダブルクリックします。
    • 複数言語の場合は、次のように、ディレクトリ名を変更せずにapex_22.2.zipを解凍します。

      • UNIXおよびLinuxの場合: $ unzip apex_22.2.zip
      • Windowsの場合: エクスプローラーでapex_22.2.zipファイルをダブルクリックします。

    ノート:

    ファイルを解凍するディレクトリ・ツリーは深くならないようにし、空白を含むディレクトリの下には格納しないようにします。たとえば、Windowsの場合はC:\TEMPに解凍します。
  3. 作業ディレクトリをapexに変更します。
  4. SQL*Plusを起動し、APEXがインストールされているデータベースに、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. デフォルト・プロファイルに対して既存のすべてのパスワード複雑性ルールを有効にします。
  6. 適切なインストール・オプションを選択します。

    完全開発環境ではアプリケーションを開発するため、アプリケーション・ビルダー環境へのすべてのアクセス権があります。ランタイム環境ではアプリケーションは変更できず、実行することができます。

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

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

      @apexins.sql tablespace_apex tablespace_files tablespace_temp images

      説明:

      • tablespace_apexは、APEXアプリケーション・ユーザーの表領域の名前です。
      • tablespace_filesは、APEXファイル・ユーザーの表領域の名前です。
      • tablespace_tempは、一時表領域または一時表領域グループの名前です。
      • imagesは、APEXイメージの仮想ディレクトリです。EPGを使用するインストールの場合、/i/はimages引数に必須の値です。将来的にAPEXのアップグレードをサポートするために、仮想イメージ・ディレクトリを/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は、APEXアプリケーション・ユーザーの表領域の名前です。
      • tablespace_filesは、APEXファイル・ユーザーの表領域の名前です。
      • tablespace_tempは、一時表領域または一時表領域グループの名前です。
      • imagesは、APEXイメージの仮想ディレクトリです。将来的にAPEXのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/と定義します。

      次に例を示します。

      @apxrtins.sql SYSAUX SYSAUX TEMP /i/

APEXをインストールすると、次のデータベース・アカウントが作成されます。

  • APEX_220200 - APEXのスキーマおよびメタデータを所有するアカウント。
  • FLOWS_FILES - APEXのアップロードされたファイルを所有するアカウント。
  • APEX_PUBLIC_USER - Oracle REST Data ServicesまたはOracle HTTP Serverおよびmod_plsqlを使用したAPEXの構成に使用する最小限の権限が付与されたアカウント。

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

  • APEX_REST_PUBLIC_USER - APEXに格納されているRESTfulサービスの定義を呼び出す際に使用されるアカウント。
  • APEX_LISTENER - APEXに格納されているRESTfulサービスの定義を照会するために使用されるアカウント。

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

参照:

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

インスタンス管理者アカウントを作成または更新する方法を学習します。

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

ヒント:

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

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

インスタンス管理者は、ワークスペースのプロビジョニング、機能とインスタンス設定の構成、セキュリティの管理など、Oracle APEXインスタンス全体の管理を担当するスーパーユーザーです。

管理タスクを実行するために、インスタンス管理者がOracle APEX管理サービス・アプリケーションにサインインします。

参照:

『Oracle APEX管理ガイド』Oracle APEX管理サービスに関する項

6.3.2.2 apxchpwd.sqlについて

apxchpwd.sqlスクリプトを実行すると、インスタンス管理者アカウントを作成または更新できます。

ノート:

apxchpwd.sqlスクリプトは、Oracle Autonomous Database on Shared Exadata InfrastructureおよびOracle APEXアプリケーション開発 (APEXサービス)ではサポートされていません。

次のシナリオでは、apxchpwd.sqlスクリプトを実行する必要があります。

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

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

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

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

ヒント:

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

6.3.2.3 apxchpwd.sqlの実行

apxchpwd.sqlスクリプトを実行して、インスタンス管理者アカウントを作成、更新します。

インスタンス管理者アカウントを作成または更新するには:

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。
  2. SQL*Plusを起動し、Oracle APEXがインストールされているデータベースに、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の詳細は、『SQL*Plusユーザーズ・ガイドおよびリファレンス』を参照してください

6.3.3 プロセスの再起動

インストールの開始前に停止したプロセスを再起動します。

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

6.3.4 APEX_PUBLIC_USERアカウントの構成

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

6.3.4.1 APEX_PUBLIC_USERアカウントについて

APEX_PUBLIC_USERアカウントは、新しいOracle APEXのインストール時にランダムなパスワードとともに作成されます。

新しいインストール環境でデータベース・アクセス記述子(DAD)を構成するには、まず、このアカウントのパスワードを変更する必要があります。

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

SQL文を実行してAPEX_PUBLIC_USERアカウントのロックを解除します。

ヒント:

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

APEX_PUBLIC_USERアカウントをロック解除するには:

  1. SQL*Plusを起動し、Oracle APEXがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。Oracle APEXが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
    

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

SQL文を実行してAPEX_PUBLIC_USERアカウントのパスワードを変更します。

ヒント:

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

APEX_PUBLIC_USERアカウントのパスワードを変更するには:

  1. SQL*Plusを起動し、Oracle APEXがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。Oracle APEXが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を作成する場合に、このパスワードを使用します。

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

APEX_PUBLIC_USERを変更してPASSWORD_LIFE_TIMEパラメータを無期限に設定することで、パスワードの期限切れを防ぐことができます。これを行うには、PASSWORD_LIFE_TIMEパラメータが無制限に設定されている別のプロファイルを作成し、APEX_PUBLIC_USERアカウントを変更して、これを新しいプロファイルに割り当てます。

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

参照:

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

6.3.5 RESTfulサービスの構成

Oracle APEXを新規インストールする場合は、構成スクリプトapex_rest_config.sqlを実行してRESTfulサービスを構成します。

構成すると、インスタンス管理者がこの機能の可用性を制御できます。インスタンス管理者がこのOracle APEXインスタンスのRESTfulサービスを無効にした場合、このインスタンスではRESTfulサービスを使用できず、RESTfulサービスのアイコンも表示されません。

Oracle APEXでRESTfulサービスを構成するには:

  1. 作業ディレクトリを、インストール・ソフトウェアを解凍したapexディレクトリに変更します。
  2. SQL*Plusを起動し、Oracle APEXがインストールされているデータベースに、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 APEXでRESTfulサービスを構成する際は、2つのデータベース・アカウントが新しく作成されます。

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

    • APEX_REST_PUBLIC_USER - Oracle APEXに格納されているRESTfulサービスの定義をコールする際に使用されるアカウント。

参照:

Oracle APEX管理ガイドインスタンスのRESTfulサービスの有効化