Oracle Application Expressは、文字通りどこにでも展開できるワールドクラスの機能を備えた、スケーラブルで安全なエンタープライズアプリを構築できるローコード開発プラットフォームです。
また、Oracleデータベースおよびその他の関連データベース機能を作成および管理するためにOracle Corporationによって開発された独自のWebベースの統合開発環境(IDE)です。さらに、開発者は、実際の問題を解決し、すぐに価値を提供する魅力的なアプリをすばやく開発して導入できます。高度なソリューションを提供するために、さまざまなテクノロジーの専門家である必要はありません。
アーキテクチャについて、APEXとORDSの相互接続全体の概要と、明らかに実践的な方法について説明します。それでは、最初にアーキテクチャから始めましょう
アーキテクチャ
つまり、これは3層のアーキテクチャであり、リクエストはブラウザからWebサーバーを介してデータベースに送信されます。
また、データベースで実行されるすべての処理、データ操作、およびビジネスロジック。このアーキテクチャは、ゼロレイテンシのデータアクセス、最高のパフォーマンス、およびスケーラビリティを、箱から出してすぐに保証します。
したがって、WebブラウザからのWeb要求はOracle REST Data Services(ORDS)に送信され、そこでOracle Databaseに渡されてオークションにかけられます。データベース内で、要求はOracleAPEXによって処理されます。処理が完了すると、結果はORDSを介してブラウザに返送されます。
機能
また、APEXは、アプリケーション開発のこれら6つの側面に対応することで、より優れたアプリの構築を支援します
データ
Oracle APEXは、データの表示、操作、グラフ化、および処理を可能な限り簡単かつ効率的に行えるように努めています。データの出所がローカルデータベース、リモートデータベース、Webサービスのいずれであっても、Oracle APEXは、データを情報に変換するのに役立つ最先端の機能を備えています。
セキュリティ
また、Oracle APEXは、箱から出してすぐに安全性の高いWebアプリを構築するように設計されています。
さらに、絶えず変化するWeb標準と、ますます機知に富んだ攻撃者がサイトをハッキングする新しい方法を見つけている世界では、セキュリティに重点を置いているため、アプリケーションは保護されたままです。
アクセシビリティ
また、Oracle APEXは、開発者がアクセスしやすいWebアプリをできるだけ簡単に構築できるように設計されており、さまざまな能力や要件を持つユーザーに包括的なユーザーエクスペリエンスを提供します。
すべてのリリースで、新しいアクセシビリティ固有の機能が追加され、既知のアクセシビリティバグが修正され、独自のテスト戦略が継続的に改善され、素晴らしい開発者とユーザーにツールを提供することを目的として、これをこれまで以上に簡単にするよう努めています。みんなのための経験。
監視
SOモニタリングとロギングは、ユーザーがアプリケーションをどのように操作するかについての洞察を提供します。この情報は、ハッキングの試み、パフォーマンスの問題、およびアプリケーションエラーを特定するために不可欠です。監視とロギングがすでに組み込まれているため、OracleAPEXでカバーしました。
グローバリゼーション
つまり、グローバリゼーションとは、複数の言語とロケールの環境で適切かつ正しく機能するアプリケーションの開発をサポートする開発フレームワークの機能です。グローバリゼーションを念頭に置いて設計されたOracleAPEXには、アプリケーションの翻訳とローカリゼーションのサポートが含まれます。つまり、特定の言語とロケールをサポートするようにアプリケーションを適合させることが含まれます。
ユーザーインターフェース
Universal Themeは、開発者がHTML、CSS、またはJavaScriptの広範な知識を必要とせずに最新のWebアプリケーションを構築できるようにするApplicationExpressのユーザーインターフェイスです。 Application Expressの実用的な知識があれば、Universal Themeを使用して、アクセスしやすく、カスタマイズしやすく、保守しやすいレスポンシブアプリケーションを簡単に構築できます。
十分な議論が終わったと思います。それを入手する方法について話し始めましょう
要件
インストールと構成の作業を行うには、次のものが必要でした。
- 新しくインストールされたCantos8マシン
- 4GBのRAM。
- 4コアCPU。
- 50GBの空き容量。
- 1静的IP。
- サーバーでのグラフィカルアクセス(私のようなssh XAuthorityを使用している場合)
始める前に
マシンのインストール
IP192.168.0.168とユーザーapexを使用して仮想ボックスにcentos8マシンをインストールしました。残りの作業は、ユーザー名apex&oracleを使用して行います(ユーザーoracleは、インストール時に後で追加されます)。ユーザーapexは、マシンへの管理アクセス権を持っています。
インストールの目的でrootを使用することはお勧めしません。
ホスト名を設定
ホスト名をipamaster.unixcop.localとして設定します。もちろん、自分で設定することもできます
hostnamectl set-hostname apex.unixcop.local
SELinuxパーミッシブ
SELinuxをPermissive/Disabledモードに設定する必要があります
/ etc / selinux にある設定を変更することで、永続的または一時的にすることができます ディレクトリ
hostsファイルへのエントリ
IPとホスト名を/etc/hostsファイルに追加する必要があります。私の場合、IPは192.168.0.168
TomCatサーバーのインストール
まず、Tomcatユーザーを作成する必要があります。特定のユーザーにはシェルが必要ないため、シェルは提供しません。
sudo useradd -s /bin/false tomcat
次に、アーカイブをダウンロードして、次のコマンドを実行する必要があります
wget https://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.50/bin/apache-tomcat-9.0.50.tar.gz
次に、すべてのファイルを抽出して、tomcatのネイティブディレクトリに移動します
tar xzf apache-tomcat-9.0.50.tar.gz
sudo mv apache-tomcat-9.0.50/* /opt/tomcat/
また、すべてのファイルの適切な所有権を設定します
sudo chown -R tomcat:tomcat /opt/tomcat/
そのため、Tomcatはサービスを開始および停止するためのbashスクリプトを提供します。ただし、簡単にするために、Tomcatをsystemdサービスとして管理するための起動スクリプトを作成します。次の内容のtomcat.serviceファイルを作成しましょう:
sudo vim /etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
Tomcatサービスをリロードし、有効にして開始します
sudo systemctl daemon-reload
sudo systemctl enable tomcat.service
sudo systemctl start tomcat.service
Oracle Application Express(APEX)のインストール
このリンクからAPEXソフトウェアをダウンロードしますhttps://www.oracle.com/tools/downloads/apex-downloads.html
PCでSQLPlusクライアントを使用してそこからインストールする場合はクライアントPCに、そこからインストールする場合はデータベースサーバーにソフトウェアを解凍します。後者は、SQLPlusクライアントとデータベースサーバー間のネットワークトラフィックを削減するため、より効率的です。
また、SQLPlusをお持ちでない場合は、こちらからダウンロードできますhttps://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html
CentOS 8を使用しているので、OLM8からダウンロードしてインストールしました
次に、APEXのディレクトリを作成します
mkdir -p /opt/oracle/apex
ダウンロードしたAPEXをここで解凍します
unzip apex_21.*.zip -d /opt/oracle
このように権限を変更する必要があります
chown -R oracle:oinstall /opt/oracle/apex
次に、APEXディレクトリにAPEXsqlファイルのすべてのACLを許可するを作成します。これをapex_acl.sqlと呼びます。 。
BEGIN
BEGIN
dbms_network_acl_admin.drop_acl(acl => 'all-network-PUBLIC.xml');
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
dbms_network_acl_admin.create_acl(acl => 'all-network-PUBLIC.xml',
description => 'Allow all network traffic',
principal => 'PUBLIC',
is_grant => TRUE,
privilege => 'connect');
dbms_network_acl_admin.add_privilege(acl => 'all-network-PUBLIC.xml',
principal => 'PUBLIC',
is_grant => TRUE,
privilege => 'resolve');
dbms_network_acl_admin.assign_acl(acl => 'all-network-PUBLIC.xml',
host => '*');
END;
/
sho err
COMMIT;
/
次に、sysdbaとしてプラガブルデータベースに接続します。次のスニペットを実行します
cd /opt/oracle/apex
sqlplus /nolog
役割を変更する
CONN sys@pdb1 AS SYSDBA
これを実行して、完全な開発環境をインストールします
@apexins.sql SYSAUX SYSAUX TEMP /i/
管理者の作成とパスワードの設定
@apxchpwd.sql
パブリックユーザーのロックを解除する
ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK;
ALTER USER APEX_PUBLIC_USER IDENTIFIED BY "uN1xC0p!";
RESTデータサービスの構成
@apex_rest_config.sql
ACLセットアップの実行
@apex_acl.sql
次に、データベースから切断します
exit
APEX静的ファイルをWebサーバーディレクトリにコピーします。これらは、プロキシからの静止画像を提供するために使用されます。
mkdir -p /var/www/apex/images
cp -a /opt/oracle/apex/images/. /var/www/apex/images
この時点で、APEXのインストールは完了です
Oracle Rest Data Services(ORDS)のインストール
このリンクからインストールファイルをダウンロードしますhttps://www.oracle.com/database/technologies/appdev/rest-data-services-downloads.html
このソフトウェアの最新バージョンをダウンロードする
APEXと同様に、ORDS用のディレクトリを作成します
mkdir -p /opt/oracle/ords
作成したディレクトリにファイルを解凍します
unzip ords-21.*.zip -d /opt/oracle/ords
詳細モードでORDS構成コマンドを実行して、対話型インストールプロセスを実行します。
java -jar ords.war install advanced
ORDS構成ディレクトリの入力を求められたら、config
と入力します。 。
次に、接続情報をプラグ可能なデータベースXEPDB1
に提供します
構成が完了すると、値はopt/oracle/ords/config/ords/defaults.xml
に保存されます。 ファイル。変更可能
tomcatユーザーは、ORDS構成フォルダーへの読み取り/書き込みアクセス権を持っている必要があります
chown -R tomcat:tomcat /opt/oracle/ords/config
ords.war
をコピーします Tomcatに webapps
このためのディレクトリ
ORDSも完了し、apacheを使用した最終構成になりました
ApachehttpdのORDSへのマッピング
httpd
を追加します 構成ファイル。デフォルトでは、すべての.conf
etc/httpd/conf.d/
に配置されたファイル ディレクトリはhttpd
によって読み取られます メインの/etc/httpd/conf/httpd.conf
への追加の構成ファイルとして 構成ファイル。 apex.conf
を作成します etc/httpd/conf.d/
内のファイル 次のような内容のディレクトリ:
# forward ORDS tomcat
<VirtualHost *:80>
# uncomment the lines below if you plan to serve different domains
# on this web server, don't forget to change the domain name
# ServerName yourdomain.tld
# ServerAlias www.yourdomain.tld
# alias for APEX static files
Alias "/i" "/var/www/apex/images/"
# uncomment the line below if you want
# to redirect traffic to ORDS from root path
# RedirectMatch permanent "^/$" "/ords"
# proxy ORDS requests to tomcat
ProxyRequests off
<Location "/ords">
ProxyPass "ajp://unixcop:8009/ords"
ProxyPassReverse "ajp://unixcop:8009/ords"
</Location>
</VirtualHost>
必要なサービスを再起動します
systemctl restart httpd
systemctl restart tomcat
ファイアウォールポリシーを調整する
firewall-cmd --permanent --add-service={http,https}
firewall-cmd --reload
最後に、ブラウザからAPEXにアクセスします
ブラウザに移動し、http://apex.unixcop.local/ords
を押します。ADMINクレデンシャルでログインすると、次のようにADMINコンソールが表示されます
今日は以上です。この記事があなたが新しいことを学ぶのに役立つことを願っています。お友達と共有してください。ご不明な点がございましたら、コメントセクションでお知らせください。素晴らしい学習の日を!