Oracle APEXのインストール(Oracle Application Express)(非コンテナ環境)

Oracle APEX 技術記事
対応バージョン更新履歴
  • Oracle APEX 4 – 5.0.4
  • Oracle Database 11.2 – 12.1
  • Oracle Linux
  • 2017/07/07: SSJ Tech labより移行
  • 2018/05/25: APEXの読み方について更新
ここではAPEX(Oracle Application Express)のインストールについて解説します。
Linuxでのインストール記事ですが、Windowsでも参考になるかと思います。

Oracle APEXの概要について

Oracle APEXとは

Oracle APEXはOracle Database に付属しているWebブラウザベースの開発ツールです。基本的にOracle Databaseがインストールされていれば使うことが可能です。
Oracle APEXについて現状あまり浸透していないように感じています。ただ、筆者の個人的な見解ではありますが、特にOracle Cloudの台頭により、管理用などのツールとしてこれからどんどん使われるようになることが予想されます。

APEXを利用することで、どんなことが出来るかというと、RESTfulなWebアプリケーションの作成、エクセルのシステム化やワークフローの作成などが出来るようになります。

Oracle APEXの読み方

Oracle Application Expressの略称となるOracle APEXですが、聞いたところによると”エイペックス”と読むのが主流のようですが、”アペックス”と読んでも特に間違いではないようです。ちなみに筆者はずっと”アペックス”と読んでいました。Oracle APEXのユーザー会で、全世界的にユーザーグループで”エイペックス”と読むように統一されているとアナウンスされていました。APEX由来について説明のリンク(英語)

Oracle APEXで作成したページの例

ご参考までに以下のURLよりAPEXで作成したページの例が参照できます。
https://www.builtwithapex.com

Oracle APEXの最新版

以下のURLから最新版のダウンロード又はクラウドサービスとしての利用が可能です。
https://apex.oracle.com/jp
※OTN(Oracle Technology Network)のページから直接ダウンロードすることも可能です。

Oracle APEXへの接続について

APEXの接続にはOracle REST Data Services(旧称APEXリスナー)または埋込みPL/SQLゲートウェイでの接続が可能です。本記事では埋め込みPL/SQLゲートウェイを利用したインストールを紹介します。

次のようなイメージで接続を行います。

埋込みPL/SQLゲートウェイの接続イメージ

埋込みPL/SQLゲートウェイで接続する場合は、ウェブブラウザを経由して、直接データベースに接続するイメージです。

Webブラウザ <-> Oracle Database(Oracle ListenerでHTTPをリスニングします。)

埋込みPL/SQLゲートウェイではXML Databaseが必要になります。11gのEnterprise Editionを利用しており、Database作成時にXML Databaseをインストールしていない場合は、XML Databaseをインストールをしないと埋込みPL/SQLゲートウェイの利用は出来ません。Oracle Database 12cの各エディション、Oracle Database 11gの Standard Edition、Standard Edition One、Express EditionについてはDatabase作成時にインストールされています。

Oracle APEXのインストール

【注意】既存環境の利用をしている場合

既存でAPEXを利用している場合、アップグレード後にスキーマの削除が可能ですが、削除すると元に戻せなくなります。アップグレードの確認が取れるまでは既存のスキーマは消さないでください。APEXの新バージョンをインストールすると、既存のユーザデータは変更されず、メタデータのアップグレードとなります。ユーザ・インタフェースを保つために、アップグレードされないアプリケーション・コンポーネントについては、開発者でアップグレードの検討をする必要があります。また、アップグレード前にバックアップは必ず取るようにしてください。

本記事でのインストール構成について

本記事の説明では基本的にExpress Edition(無償)の環境を利用しています。ライセンス無償でありOracleからのサポートはされないのですが、今回はオンライン以外でも無償で利用可能な環境があるよという紹介込みです。

Oracle APEXのダウンロード

以下のURLより最新版のAPEXをダウンロードをします。
https://apex.oracle.com/jp

Oracle APEXの各バージョンでサーティファイ(承認・保証)されているOracle Databaseの最低バージョンに注意してください。

  • Oracle APEX 5.1 (Oracle Database 11.2.0.4以上)
  • Oracle APEX 5.0 (Oracle Database 11.1.0.7以上)
  • Oracle APEX 4.0 (Oracle Database 10.2.0.3以上)

以降2016/10/28現在の最新であるapex_5.0.4.zipを対象として説明していきます。

バイナリの展開とインストール

ダウンロードしたapex_5.0.4.zipを展開し、インストールします。

Oracle APEXの接続構成

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

埋込みPL/SQLゲートウェイを構成します。

リモート接続のためのローカル以外のポート許可

必要な場合は、以下のパッケージにてローカル以外でのリスニングの許可を行ってください。
設定値FALSEは、ローカルホストを含む他のインターフェースについても同時にリスニングします。TRUEの場合はローカルホスト(127.0.0.1)のみリスニングします。

以下のSQLを実行し、「Host : localhost」と出ている場合は、localhostのみでリスニングされる設定となっています。

ACL(アクセスコントロールリスト)の許可

補足事項となりますが、PDF印刷が出来ないなどサーバプロセスでの接続エラーが出る場合、ACLで拒否されている可能性があります。その場合は、アクセスを許可をします。

ACLでの許可が必要な場合は、PDF印刷、メール送信やWebサービスの利用を行う場合です。外部(プリンタサーバ等)との連携が必要ない場合は不要な設定です。接続する各サーバがローカルで動作する場合も必要となります。
※ 12cの場合は以下のパッケージは非推奨ですので、DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACEを利用してください。詳細はマニュアルをご参照ください。

リスナーの確認

HTTPをリスニングしているか確認します。

上記の表示がされていない場合、リスニングされていません。しばらく待ってもリスニングされない場合は、構成内容を再度見直して下さい。
“HOST=”がAPEXへ接続する時に、ブラウザのURLに指定するIPアドレスとなります。”PORT=”がポート番号です。

ADMINユーザのパスワード変更

ADMIN(APEXのログインユーザ)のパスワード変更をします。初回ログイン時に利用され、ログイン時にパスワード変更が求められます。

Oracle APEXへの接続

まずは以下のURLでADMINパスワードの変更を行ってください。
http://[DBサーバのIP]:8080/apex/apex_admin
パスワードは数字、大文字、記号(指定されたもの)を必ず1つは入れないとNGとなりますので、ご注意ください。

以下のURLからログインできるようになります(パスワード変更後は勝手に移動します)。
http://[DBサーバのIP]:8080/apex

Oracle APEXの日本語化

日本語化用のスクリプトを実行します。ウェブブラウザでのサインインの時に日本語か英語かを選択できるようになります。
NLS_LANG=Japanese_Japan.AL32UTF8を設定しないとエラーとなる点に注意してください。

ログイン画面で選択が可能になります。(Sign inボタンの下にあります。)

ログイン後はちょっとわかりづらいですが、トップページの左下の方で言語の選択が出来ます。

関連記事

  1. Oracle APEX 技術記事

    Oracle APEXにおけるGUIを用いたテーブルの作成

  2. Oracle APEX 開発 概要編

  3. Oracle APEX 技術記事

    Oracle APEX のブラウザ印刷について

  4. Oracle APEX 技術記事

    Oracle APEX のレポートにボタンを追加する

  5. Oracle APEX 技術記事

    Oracle APEX有効化と確認(コンテナ構成)

  6. Oracle APEX 技術記事

    Oracle APEXのインストール(Oracle Applicati…