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

前
 
次
 

A Oracle Application Expressインストールのトラブルシューティング

この項では、トラブルシューティングの情報を示します。

A.1 インストール・セッションのログの確認

apexins.sqlスクリプトを実行すると、installYYYY-MM-DD_HH24-MI-SS.logというネーミング規則に従って、ログ・ファイルがapexディレクトリに作成されます。インストールが成功した場合、ログ・ファイルには次のテキストが含まれます。

Thank you for installing Oracle Application Express.
Oracle Application Express is installed in the APEX_050000 schema.

ログ・ファイルにいくつかのエラーが含まれていても、インストールが失敗したことを意味しません。許容できるエラーはログ・ファイルにその旨が記載されていることに注意してください。

A.2 Oracle Application Expressインストールの妥当性の検証

Oracle Application Expressインストールの妥当性は、次の問合せを実行して検証できます。

SELECT STATUS FROM DBA_REGISTRY
WHERE COMP_ID = 'APEX';

結果がVALIDの場合、インストールは正常に実行されたと想定できます。

A.3 パッチのダウンロードとインストール

インストールに必要なパッチの更新は、My Oracle SupportのWebサイトで確認してください。

必要なパッチをダウンロードする手順は、次のとおりです。

  1. Webブラウザを使用して、My Oracle SupportのWebサイトを表示します。

    https://support.oracle.com/

  2. My Oracle Supportにサインインします。


    注意:

    My Oracle Supportの登録ユーザーでない場合は、ここで登録してくださいをクリックして登録の手順に従います。

  3. My Oracle Supportのメイン・ページで「パッチと更新版」タブをクリックします。

  4. 「パッチ検索」グループで、「製品またはファミリ(拡張検索)」を選択します。

  5. 「製品」フィールドで、「Oracle Database」を選択します。

  6. 「リリース」フィールドで、リリース番号を1つ以上選択します。

  7. 「検索」をクリックします。

  8. 「パッチ検索」ページに、使用可能なすべてのパッチの更新が表示されます。

  9. パッチ番号を選択して「README」をクリックします。パッチ・セットに関する情報と、インストールへのパッチの適用方法が記載された「README」ページが表示されます。

  10. 「パッチ検索」ページに戻って「ダウンロード」をクリックし、ファイルをシステムに保存します。

  11. Oracle Database 12cに付属の解凍ユーティリティを使用して、My Oracle SupportからダウンロードしたOracleのパッチ更新を解凍します。解凍ユーティリティは、$ORACLE_HOME/binディレクトリにあります。

A.4 インストールが失敗した後のクリーンアップ

インストールが成功した場合、インストールの終わり近くで次のメッセージ・バナーが表示されます。

Thank you for installing Oracle Application Express.
Oracle Application Express is installed in the APEX_050000 schema.

再インストールするには、インストール・タイプに応じて、Oracle Application Expressデータベース・スキーマを削除するか、データベースからApplication Expressを完全に削除するスクリプトを実行する必要があります。

A.4.1 アップグレード・インストール失敗後の旧リリースへの復旧

アップグレード・インストールに失敗した場合は、Oracle Application Expressを元のリリースに戻してから、現行のリリースに関連付けられているスキーマを削除する必要があります。

A.4.1.1 以前のリリースのOracle Application Expressがインストールされているかどうかの確認

以前のリリースのApplication Expressがインストールされているかどうかを確認するには、次のステップを実行します。

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

    select username from dba_users
        where regexp_like(username,'(FLOWS|APEX)_\d{6}')
            and username <> (select table_owner from all_synonyms
            where synonym_name = 'WWV_FLOW'
            and owner = 'PUBLIC')
    

    問合せによってすべての行が戻される場合、データベースには以前のリリースのOracle Application Expressが含まれています。

A.4.1.2 元のリリースに戻す

この項では、Oracle Application Expressの元のリリースに戻す方法を説明します。

A.4.1.2.1 リリース1.5に戻す

Oracle Application Expressを元のリリース1.5に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

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

    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_010500;
    exec flows_010500.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_010500');
    
  4. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.2 リリース1.6に戻す

Oracle Application Expressをリリース1.6に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

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

    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_010600;
    exec flows_010600.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_010600');
    
  4. 元のリリースに応じて、SQL*Plusで適切なコマンドを実行します。

  5. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.3 リリース2.0に戻す

Oracle Application Expressを元のリリース2.0に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

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

    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_020000;
    exec flows_020000.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_020000');
    
  4. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.4 リリース2.2に戻す

Oracle Application Expressを元のリリース2.2に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

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

    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_020200;
    exec flows_020200.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_020200');
    
  4. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.5 リリース3.0に戻す

Oracle Application Expressを元のリリース3.0に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを3.0ソースのapexに変更します。

  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
    
    @apexvalidate x x FLOWS_030000
    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_030000;
    exec flows_030000.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_030000');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := flows_030000.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','FLOWS_030000');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  5. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.6 リリース3.1に戻す

Oracle Application Expressを元のリリース3.1に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを3.1ソースのapex/coreに変更します。

  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  4. 次のコマンドを実行します。

    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
    
  5. 作業ディレクトリを3.1ソースのapexに変更します。

  6. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
     
    @apexvalidate x x FLOWS_030100
    ALTER SESSION SET CURRENT_SCHEMA = FLOWS_030100;
    exec flows_030100.wwv_flow_upgrade.switch_schemas('APEX_050000','FLOWS_030100');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := flows_030100.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','FLOWS_030100');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  8. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.7 リリース3.2に戻す

Oracle Application Expressを元のリリース3.2に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを3.2ソースのapex/coreに変更します。

  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  4. 次のコマンドを実行します。

    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
    
  5. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
     
    @apexvalidate x x APEX_030200
    ALTER SESSION SET CURRENT_SCHEMA = APEX_030200;
    exec apex_030200.wwv_flow_upgrade.switch_schemas('APEX_050000','APEX_030200');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := apex_030200.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','APEX_030200');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  7. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.8 リリース4.0に戻す

Oracle Application Expressを元のリリース4.0に戻すには、次のステップを実行します。

  1. 作業ディレクトリを4.0ソースのapex/coreに変更します。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  3. 次のコマンドを実行します。

    @wwv_flow_val.sql
    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
    
  4. 作業ディレクトリを4.0ソースのapexに変更します。

  5. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
    
    @apexvalidate x x APEX_040000
    ALTER SESSION SET CURRENT_SCHEMA = APEX_040000;
    exec apex_040000.wwv_flow_upgrade.switch_schemas('APEX_050000','APEX_040000');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := apex_040000.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','APEX_040000');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  7. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.9 リリース4.1に戻す

Oracle Application Expressを元のリリース4.1に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを4.1ソースのapex/coreに変更します。

  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  4. 次のコマンドを実行します。

    @wwv_flow_val.sql
    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
    
  5. 作業ディレクトリを4.1ソースのapexに変更します。

  6. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
     
    @apexvalidate x x APEX_040100
    ALTER SESSION SET CURRENT_SCHEMA = APEX_040100;
    exec apex_040100.wwv_flow_upgrade.switch_schemas('APEX_050000','APEX_040100');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := apex_040100.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','APEX_040100');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  8. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.10 非CDBでリリース4.2に戻す

非CDBでOracle Application Expressを元のリリース4.2に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを4.2ソースのapex/coreに変更します。

  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  4. 次のコマンドを実行します。

    alter session set current_schema = SYS;
     
    @core_sys_views.sql
     
    grant select on sys.wwv_flow_gv$session to APEX_040200;
     
    @wwv_flow_val.sql
    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
     
    begin
        dbms_utility.compile_schema('APEX_040200');
    end;
    /
    
  5. 作業ディレクトリを4.2ソースのapexに変更します。

  6. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    set define '^'
     
    @apexvalidate x x APEX_040200
    ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
    exec apex_040200.wwv_flow_upgrade.switch_schemas('APEX_050000','APEX_040200');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := apex_040200.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','APEX_040200');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  8. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.2.11 CDBでリリース4.2に戻す

CDBでOracle Application Expressを元のリリース4.2に戻すには、次のステップを実行します。

  1. イメージ・ディレクトリを変更した場合は、テキスト別名/i/が元のリリースのイメージ・ディレクトリを指すように戻す必要があります。「イメージ・ディレクトリのコピー」を参照してください。

  2. 作業ディレクトリを4.2ソースのapex/coreに変更します。

  3. そのディレクトリに、apx42dgrd1.sqlという名前で、次から構成されている新しいテキスト・ファイルを作成します。

    alter session set current_schema = SYS;
     
    @core_sys_views.sql
     
    grant select on sys.wwv_flow_gv$session to APEX_040200;
     
    @wwv_flow_val.sql
    @wwv_flow_val.plb
    @wwv_dbms_sql.sql
    @wwv_dbms_sql.plb
     
    begin
        dbms_utility.compile_schema('APEX_040200');
    end;
    /
    
  4. そのディレクトリに、apx42dgrd.sqlという名前で、次から構成されている2番目の新しいテキスト・ファイルを作成します。

    set define '^'
     
    whenever sqlerror exit
     
    column :xe_home new_value OH_HOME NOPRINT
    variable xe_home varchar2(255)
     
    set serverout on
    begin
    -- get oracle_home
        sys.dbms_system.get_env('ORACLE_HOME',:xe_home);
        if length(:xe_home) = 0 then
            sys.dbms_output.put_line(lpad('-',80,'-'));
            raise_application_error (
                -20001,
                'Oracle Home environment variable not set' );
        end if;
    end;
    /
    whenever sqlerror continue
     
    set termout off
    select :xe_home from sys.dual;
    set termout on
     
    host ^OH_HOME/perl/bin/perl -I ^OH_HOME/rdbms/admin ^OH_HOME/rdbms/admin/catcon.pl -b apx42dgrd apx42dgrd1.sql
    
  5. SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースのCDB$ROOTに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

    SYSTEM_DRIVE:\ 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
    
  6. 次のコマンドを実行します。

    @apx42dgrd.sql
    
  7. 作業ディレクトリを4.2ソースのapexに変更します。

  8. そのディレクトリに、apx42dgrd1.sqlという名前で、次の内容を持つ新しいテキスト・ファイルを作成します。

    set define '^'
     
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
     
    @apexvalidate x x APEX_040200
     
    ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
    exec apex_040200.wwv_flow_upgrade.switch_schemas('APEX_050000','APEX_040200');
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    declare
        l_apex_version varchar2(30);
    begin
        l_apex_version := apex_040200.wwv_flows_release;
        dbms_registry.downgrading('APEX','Oracle Application Express','validate_apex','APEX_040200');
        dbms_registry.downgraded('APEX',l_apex_version);
        validate_apex;
    end;
    /
    
  9. そのディレクトリに、apx42dgrd.sqlという名前で、次から構成されている2番目の新しいテキスト・ファイルを作成します。

    set define '^'
     
    whenever sqlerror exit
     
    column :xe_home new_value OH_HOME NOPRINT
    variable xe_home varchar2(255)
     
    set serverout on
    begin
    -- get oracle_home
        sys.dbms_system.get_env('ORACLE_HOME',:xe_home);
        if length(:xe_home) = 0 then
            sys.dbms_output.put_line(lpad('-',80,'-'));
            raise_application_error (
                -20001,
                'Oracle Home environment variable not set' );
        end if;
    end;
    /
    whenever sqlerror continue
     
    set termout off
    select :xe_home from sys.dual;
    set termout on
     
    host ^OH_HOME/perl/bin/perl -I ^OH_HOME/rdbms/admin ^OH_HOME/rdbms/admin/catcon.pl -b apx42dgrd apx42dgrd1.sql
    
  10. SQL*Plusを起動し、Oracle Application ExpressがインストールされているデータベースのCDB$ROOTに、SYSDBAロールが指定されているSYSとして接続します。

    Windowsの場合:

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

    @apx42dgrd.sql
    
  12. 次のセクション「Oracle Application Expressリリース5.0のスキーマの削除」を参照してください。

A.4.1.3 Oracle Application Expressリリース5.0のスキーマの削除

以前のリリースに戻した後で、Oracle Application Express 5.0のスキーマを削除できます。

A.4.1.3.1 非CDBからの、Oracle Application Expressリリース5.0のスキーマの削除

非CDBからリリース5.0のスキーマを削除するには、次のステップを実行します。

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

    • Windowsの場合:

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

    DROP USER APEX_050000 CASCADE;
    

    Oracle Application Express 5.0のスキーマを削除したら、再度アップグレードを試行できます。

A.4.1.3.2 CDBからの、Oracle Application Expressリリース5.0のスキーマの削除

CDBからリリース5.0のスキーマを削除するには、次のステップを実行します。

  1. remove_apx50_usr1.sqlという名前で、次の内容を持つ新しいテキスト・ファイルを作成します。

    alter session set current_schema = SYS;
    drop user APEX_050000 cascade;
    
  2. remove_apx50_usr.sqlという名前で、次の内容を持つ2番目の新しいテキスト・ファイルを作成します。

    set define '^'
    whenever sqlerror exit
    column :xe_home new_value OH_HOME NOPRINT
    variable xe_home varchar2(255)
     
    set serverout on
    begin
    -- get oracle_home
        sys.dbms_system.get_env('ORACLE_HOME',:xe_home);
        if length(:xe_home) = 0 then
            sys.dbms_output.put_line(lpad('-',80,'-'));
            raise_application_error (
                -20001,
                'Oracle Home environment variable not set' );
        end if;
    end;
    /
    whenever sqlerror continue
     
    set termout off
    select :xe_home from sys.dual;
    set termout on
     
    host ^OH_HOME/perl/bin/perl -I ^OH_HOME/rdbms/admin ^OH_HOME/rdbms/admin/catcon.pl -b remove_apx50_usr remove_apx50_usr1.sql
    
  3. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

      SYSTEM_DRIVE:\ 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
      
  4. 次のコマンドを実行します。

    @remove_apx50_usr.sql
    

    Oracle Application Express 5.0のスキーマを削除したら、再度アップグレードを試行できます。

A.4.2 Oracle Application Expressのデータベースからの削除

このセクションでは、データベースを削除せずに、Oracle Application Expressスキーマ、シノニムおよびユーザーをデータベースから削除する方法を説明します。データベースを削除する場合は、このステップを実行する必要があります。


注意:

旧リリースのデータベースをアップグレードし、引き続き旧リリースのOracle Application Expressを使用する必要がある場合は、このステップを実行しないでください。旧リリースの復旧の詳細は、「元のリリースに戻す」を参照してください。新規インストールとアップグレード・インストールのどちらを完了したかが不明確な場合、Application Expressの以前のリリースがデータベースの中に存在するときは、「インストールが失敗した後のクリーンアップ」のステップに従って確認します。

データベースからOracle Application Expressを削除するには、次のステップを実行します。

  1. 作業ディレクトリを、Oracle Application Expressソフトウェアを解凍したapexディレクトリに変更します。

  2. SQL*Plusを起動し、Oracle Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。

    • Windowsの場合:

      SYSTEM_DRIVE:\ 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
      
  3. 次のコマンドを実行します。

    SQL> @apxremov.sql
    
  4. apxremov.sqlを使用してApplication Expressを正常に削除した後で、現行のSQL*Plusセッションを終了し、apexins.sqlによる追加インストールを試行する前に再接続する必要があります。

A.5 Oracle Application Expressでイメージが正しく表示されない

Oracle Application Expressでイメージが正しく表示されない場合は、/i/別名の定義が複数ある可能性があります。この問題に対処するには、次のステップを実行します。

  • 可能な場合は、/i/の1つ目のインスタンスの名前を、異なる別名に変更します。

  • それができない場合は、Oracle Application Expressがダウンロードされたディレクトリにあるイメージ、またはORDS用にコピーされたイメージを、1つ目の/i/別名で定義されたディレクトリにコピーします。

A.6 ページ保護違反について

ページ保護違反は、保護されているページ・アイテムを手動で変更したことが原因の可能性があります。インストール後にOracle Application Expressにログインしようとしてこのエラーが発生した場合は、Oracle REST Data Servicesを停止して起動します。このエラーの原因がわからない場合は、アプリケーション管理者に問い合せてください。