B Oracle APEXのアップグレード中の稼働時間の最大化

Oracle APEXのアップグレード中に稼働時間を最大化する方法を学習します。

これまで、Oracle APEXをアップグレードできたのは、アプリケーションの使用を長時間完全に無効にした場合だけでした。次に、Oracle APEXアップグレード中の大部分で、エンド・ユーザーがアプリケーションを使用できる状態に保つために実行できる追加のステップの概要を示します。

この高度な手順は、「Oracle APEXのダウンロードとインストール」のトピックのかわりになるものです。

インスタンスをアップグレードするために、管理者は通常、次のいずれかを実行してこれらのフェーズを1回のステップで実行します。
  • 完全開発環境の場合:

    @apexins.sql tablespace_apex tablespace_files tablespace_temp images

  • ランタイムのみの環境の場合:

    @apxrtins.sql tablespace_apex tablespace_files tablespace_temp images

説明:

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

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

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

  • imagesは、Oracle APEXイメージの仮想ディレクトリです。

Oracle APEXインスタンスのアップグレードは、4つのフェーズで実行されます。

  1. データベース・スキーマおよびデータベース・オブジェクト(表、パッケージ)を作成します。

  2. アプリケーション・メタデータを移行します。

  3. ランタイム・アプリケーションが変更したデータを移行し、新規バージョンに切り替えます。

  4. 追加のログおよびサマリー・データを移行します。

フェーズ1および4では、インスタンスを使用しているエンド・ユーザーが無効になりません。フェーズ2は、アプリケーションを変更する開発者にのみ影響を与えます。フェーズ3は、Oracle APEXへのすべてのアクセスに影響を与えます。

オラクル社は現在、フェーズを個別に実行する代替のアップグレード・スクリプトも提供しています。管理者は、これらのスクリプトをapexins.sqlおよびapxrtins.sqlのかわりに使用して、Oracle APEXインスタンスの実質的な停止時間を数時間からわずか数分に短縮できます(ハードウェアの性能によります)。

ノート:

Oracle APEXCDB$ROOTにインストールされているときには、この機能はサポートされません。

管理者は、次のスクリプトを順次実行して、フェーズ1、2および3をそれぞれ開始する必要があります。フェーズ3が終了すると、スケジューラのジョブが自動的に起動してフェーズ4を実行します。

Oracle APEXアップグレード中の停止時間を短縮するには:

  1. フェーズ1スクリプトを実行します。開発およびランタイムの使用に影響はありません。

    • 完全開発環境の場合:

      @apexins1.sql tablespace_apex tablespace_files tablespace_temp images

    • ランタイムのみの環境の場合:

      @apxrtins1.sql tablespace_apex tablespace_files tablespace_temp images

    例: @apexins1.sql sysaux sysaux temp /i/

  2. フェーズ2スクリプトを実行します。開発は無効になっていますが、ランタイムの使用に影響はありません。

    • 完全開発環境の場合:

      @apexins2.sql tablespace_apex tablespace_files tablespace_temp images

    • ランタイムのみの環境の場合:

      @apxrtins2.sql tablespace_apex tablespace_files tablespace_temp images

    例: @apexins2.sql sysaux sysaux temp /i/

  3. Webサーバー(Oracle REST Data Services)のWebアクセスを無効にします。

  4. フェーズ3スクリプトを実行します。Oracle APEXを使用することはできません。

    • 完全開発環境の場合:

      @apexins3.sql tablespace_apex tablespace_files tablespace_temp images

    • ランタイムのみの環境の場合:

      @apxrtins3.sql tablespace_apex tablespace_files tablespace_temp images

    例: @apexins3.sql sysaux sysaux temp /i/

  5. Webサーバーに新しいOracle APEXバージョンのイメージをインストールします。新しいバージョンのimagesディレクトリが以前のOracle APEXバージョンのものと異なる場合(新しいバージョンが/i212/、古いバージョンが/i211/の場合など)、これはフェーズ3の実行中やそれ以前に実行できます。

    詳細は、Oracle REST Data Servicesのインストール手順を参照してください。

  6. WebサーバーのWebアクセスを再度有効にし、Oracle REST Data Servicesを再起動します。

Webアクセスの再起動後、開発者およびユーザーはインスタンスに再度アクセスでき、フェーズ4はバックグラウンドで完了します。