Oracle APEX初体验_oracle apex介绍-程序员宅基地

技术标签: APEX  Oracle  Apex  

Oracle APEX是一个低代码开发平台。在主页中的介绍如下:

Oracle APEX 是 Oracle 数据库完全支持的一项免费功能。这意味着,如果您拥有 Oracle 数据库,那么也就拥有了 Oracle APEX!您只需下载 Oracle APEX 并在现有 Oracle 数据库中安装即可!Oracle APEX 的显著优势之一是您可以在本机访问 Oracle 数据库的所有功能。了解由 Oracle 提供支持的含义,并浏览您可以获得的所有功能与优势。

也就是说,APEX是数据库的一项功能,需要额外安装。但数据库不必是企业版,也可以是免费的XE版。本文介绍了通过Oracle在GitHub上的Vagrant安装APEX的过程。

首先从Oracle GitHub上克隆项目:
git clone https://github.com/oracle/vagrant-boxes

然后进入OracleAPEX目录,下载以下软件,并存入此目录:

  1. Oracle Database 18c XE,文件名oracle-database-xe-18c-1.0-1.x86_64.rpm,约2.4G。
  2. Oracle APEX,文件名apex_19.1.zip,约150M。
  3. Oracle Rest Data Services (ORDS),文件名ords-19.2.0.199.1647.zip,约62M。

运行vagrant box:
vagrant up
输出如下,整个过程接近1小时:

D:\vagrant-boxes\OracleAPEX>vagrant up
getting Proxy Configuration from Host...
Bringing machine 'oracle-18c-apex' up with 'virtualbox' provider...
==> oracle-18c-apex: Importing base box 'ol7-latest'...
==> oracle-18c-apex: Matching MAC address for NAT networking...
==> oracle-18c-apex: Setting the name of the VM: oracle-18c-apex
==> oracle-18c-apex: Clearing any previously set network interfaces...
==> oracle-18c-apex: Preparing network interfaces based on configuration...
    oracle-18c-apex: Adapter 1: nat
==> oracle-18c-apex: Forwarding ports...
    oracle-18c-apex: 1521 (guest) => 1521 (host) (adapter 1)
    oracle-18c-apex: 5500 (guest) => 5500 (host) (adapter 1)
    oracle-18c-apex: 8080 (guest) => 8080 (host) (adapter 1)
    oracle-18c-apex: 22 (guest) => 2222 (host) (adapter 1)
==> oracle-18c-apex: Running 'pre-boot' VM customizations...
==> oracle-18c-apex: Booting VM...
==> oracle-18c-apex: Waiting for machine to boot. This may take a few minutes...
    oracle-18c-apex: SSH address: 127.0.0.1:2222
    oracle-18c-apex: SSH username: vagrant
    oracle-18c-apex: SSH auth method: private key
    oracle-18c-apex:
    oracle-18c-apex: Vagrant insecure key detected. Vagrant will automatically replace
    oracle-18c-apex: this with a newly generated keypair for better security.
    oracle-18c-apex:
    oracle-18c-apex: Inserting generated public key within guest...
    oracle-18c-apex: Removing insecure key from the guest if it's present...
    oracle-18c-apex: Key inserted! Disconnecting and reconnecting using new SSH key...
==> oracle-18c-apex: Machine booted and ready!
==> oracle-18c-apex: Checking for guest additions in VM...
==> oracle-18c-apex: Setting hostname...
==> oracle-18c-apex: Configuring proxy environment variables...
==> oracle-18c-apex: Configuring proxy for Yum...
==> oracle-18c-apex: Mounting shared folders...
    oracle-18c-apex: /vagrant => D:/vagrant-boxes/OracleAPEX
==> oracle-18c-apex: Running provisioner: shell...
    oracle-18c-apex: Running: C:/Users/yyxiao/AppData/Local/Temp/vagrant-shell20190925-14196-16gcbar.sh
    oracle-18c-apex: INSTALLER: Started up
    oracle-18c-apex: Resolving Dependencies
    oracle-18c-apex: --> Running transaction check
    oracle-18c-apex: ---> Package GeoIP.x86_64 0:1.5.0-13.el7 will be updated
    oracle-18c-apex: ---> Package GeoIP.x86_64 0:1.5.0-14.el7 will be an update
    oracle-18c-apex: --> Processing Dependency: geoipupdate for package: GeoIP-1.5.0-14.el7.x86_64
    oracle-18c-apex: ---> Package audit-libs.x86_64 0:2.8.4-4.el7 will be updated
    oracle-18c-apex: ---> Package audit-libs.x86_64 0:2.8.5-4.el7 will be an update
    ...
    ==> oracle-18c-apex: Running provisioner: shell...
    oracle-18c-apex: Running: C:/Users/yyxiao/AppData/Local/Temp/vagrant-shell20190926-15504-1aocj8c.sh
    oracle-18c-apex: INSTALLER: Timezone updated
    oracle-18c-apex: INSTALLER: Environment variables set
    oracle-18c-apex: INSTALLER: Oracle Database Installation Started up
    oracle-18c-apex: Examining /vagrant/oracle-database-xe-18c-1.0-1.x86_64.rpm: oracle-database-xe-18c-1.0-1.x86_64
    oracle-18c-apex: Marking /vagrant/oracle-database-xe-18c-1.0-1.x86_64.rpm to be installed
    oracle-18c-apex: Resolving Dependencies
    oracle-18c-apex: --> Running transaction check
    oracle-18c-apex: ---> Package oracle-database-xe-18c.x86_64 0:1.0-1 will be installed
    oracle-18c-apex: --> Finished Dependency Resolution
    oracle-18c-apex:
    oracle-18c-apex: Dependencies Resolved
    oracle-18c-apex:
    oracle-18c-apex: ================================================================================
    oracle-18c-apex:  Package                Arch   Version
    oracle-18c-apex:                                      Repository                            Size
    oracle-18c-apex: ================================================================================
    oracle-18c-apex: Installing:
    oracle-18c-apex:  oracle-database-xe-18c x86_64 1.0-1 /oracle-database-xe-18c-1.0-1.x86_64 5.2 G
    oracle-18c-apex:
    oracle-18c-apex: Transaction Summary
    oracle-18c-apex: ================================================================================
    oracle-18c-apex: Install  1 Package
    oracle-18c-apex: Total size: 5.2 G
    oracle-18c-apex: Installed size: 5.2 G
    oracle-18c-apex: Downloading packages:
    oracle-18c-apex: Running transaction check
    oracle-18c-apex: Running transaction test
    oracle-18c-apex: Transaction test succeeded
    oracle-18c-apex: Running transaction
    oracle-18c-apex:   Installing : oracle-database-xe-18c-1.0-1.x86_64                          1/1
    oracle-18c-apex:
    oracle-18c-apex: [INFO] Executing post installation scripts...
    oracle-18c-apex: [INFO] Oracle home installed successfully and ready to be configured.
    oracle-18c-apex: To configure Oracle Database XE, optionally modify the parameters in '/etc/sysconfig/oracle-xe-18c.conf' and then execute '/etc/init.d/oracle-xe-18c configure' as root.
    oracle-18c-apex:   Verifying  : oracle-database-xe-18c-1.0-1.x86_64                          1/1
    oracle-18c-apex:
    oracle-18c-apex:
    oracle-18c-apex: Installed:
    oracle-18c-apex:   oracle-database-xe-18c.x86_64 0:1.0-1
    oracle-18c-apex: Complete!
    oracle-18c-apex: INSTALLER: Oracle software installed
    oracle-18c-apex: Configuring Oracle Listener.
    oracle-18c-apex: Listener configuration succeeded.
    oracle-18c-apex: Configuring Oracle Database XE.
    oracle-18c-apex: Enter SYS user password:
    oracle-18c-apex: *************
    oracle-18c-apex:
    oracle-18c-apex: *
    oracle-18c-apex: Enter SYSTEM user password:
    oracle-18c-apex: *****
    oracle-18c-apex: ***
    oracle-18c-apex: *****
    oracle-18c-apex:
    oracle-18c-apex: **
    oracle-18c-apex: Enter PDBADMIN User Password:
    oracle-18c-apex: ****
    oracle-18c-apex: **
    oracle-18c-apex: *******
    oracle-18c-apex:
    oracle-18c-apex: *
    oracle-18c-apex: Prepare for db operation
    oracle-18c-apex: 7% complete
    oracle-18c-apex: Copying database files
    oracle-18c-apex: 29% complete
    oracle-18c-apex: Creating and starting Oracle instance
    oracle-18c-apex: 30% complete
    oracle-18c-apex: 31% complete
    oracle-18c-apex: 34% complete
    oracle-18c-apex: 38% complete
    oracle-18c-apex: 41% complete
    oracle-18c-apex: 43% complete
    oracle-18c-apex: Completing Database Creation
    oracle-18c-apex: 47% complete
    ...
        oracle-18c-apex: INSTALLER: Oracle Rest Data Services extracted to ORACLE_BASE
    oracle-18c-apex: Sep 26, 2019 9:36:20 AM
    oracle-18c-apex: INFO: Set config.dir to /opt/oracle/ords/config in: /opt/oracle/ords/ords.war
    oracle-18c-apex:
    oracle-18c-apex: SQL*Plus: Release 18.0.0.0.0 - Production on Thu Sep 26 09:36:27 2019
    oracle-18c-apex: Version 18.4.0.0.0
    oracle-18c-apex:
    oracle-18c-apex: Copyright (c) 1982, 2018, Oracle.  All rights reserved.
    oracle-18c-apex:
    oracle-18c-apex: Connected to:
    oracle-18c-apex: Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
    oracle-18c-apex: Version 18.4.0.0.0
    oracle-18c-apex:
    oracle-18c-apex: SQL>
    oracle-18c-apex:
    oracle-18c-apex: Session altered.
    oracle-18c-apex:
    oracle-18c-apex: SQL>
    oracle-18c-apex:
    oracle-18c-apex: User altered.
    oracle-18c-apex:
    oracle-18c-apex: SQL>
    oracle-18c-apex:
    oracle-18c-apex: User altered.
    oracle-18c-apex: SQL>
    oracle-18c-apex: Disconnected from Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
    oracle-18c-apex: Version 18.4.0.0.0
    oracle-18c-apex: INSTALLER: Oracle Rest Data Services configuration created
    oracle-18c-apex: Sep 26, 2019 9:36:38 AM
    oracle-18c-apex: INFO: reloaded pools: []
    oracle-18c-apex: Sep 26, 2019 9:36:38 AM oracle.dbtools.installer.InstallerBase log
    oracle-18c-apex: INFO: Installing Oracle REST Data Services version 19.2.0.r1991647
    oracle-18c-apex: Sep 26, 2019 9:36:38 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Log file written to /home/oracle/ords_install_core_2019-09-26_093638_00879.log
    oracle-18c-apex: Sep 26, 2019 9:36:44 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Verified database prerequisites
    oracle-18c-apex: Sep 26, 2019 9:36:45 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Created Oracle REST Data Services proxy user
    oracle-18c-apex: Sep 26, 2019 9:36:46 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Created Oracle REST Data Services schema
    oracle-18c-apex: Sep 26, 2019 9:36:49 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Granted privileges to Oracle REST Data Services
    oracle-18c-apex: Sep 26, 2019 9:36:54 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Created Oracle REST Data Services database objects
    oracle-18c-apex: Sep 26, 2019 9:37:15 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Log file written to /home/oracle/ords_install_datamodel_2019-09-26_093715_00609.log
    oracle-18c-apex: Sep 26, 2019 9:37:17 AM oracle.dbtools.installer.Runner log
    oracle-18c-apex: INFO: ... Log file written to /home/oracle/ords_install_apex_2019-09-26_093717_00981.log
    oracle-18c-apex: Sep 26, 2019 9:37:20 AM oracle.dbtools.installer.InstallerBase log
    oracle-18c-apex: INFO: Completed installation for Oracle REST Data Services version 19.2.0.r1991647. Elapsed time: 00:00:41.213
    oracle-18c-apex: INSTALLER: Oracle Rest Data Services installation completed
    oracle-18c-apex: Last login: Thu Sep 26 09:36:27 +08 2019
    oracle-18c-apex: INSTALLER: Oracle Rest Data Services started
    oracle-18c-apex:
    oracle-18c-apex: INSTALLER: APEX/ORDS Installation Completed
    oracle-18c-apex: INSTALLER: You can access APEX by your Host Operating System at following URL:
    oracle-18c-apex: INSTALLER: http://localhost:8080/ords/
    oracle-18c-apex: INSTALLER: Access granted with:
    oracle-18c-apex: INSTALLER: Workspace: internal
    oracle-18c-apex: INSTALLER: Username:  admin
    oracle-18c-apex: INSTALLER: Password:  h6FJOI8sL4E=1


Days              : 0
Hours             : 0
Minutes           : 58
Seconds           : 59
Milliseconds      : 738
Ticks             : 35397382104
TotalDays         : 0.04096919225
TotalHours        : 0.983260614
TotalMinutes      : 58.99563684
TotalSeconds      : 3539.7382104
TotalMilliseconds : 3539738.2104

这里一定要注意,在最后部分有密码,密码,密码!!!(我改成了Y2xrBZK/[W;d9`n")
上例是安装在外挂U盘,如果安装在本地盘,会快很多,例如:

...
    oracle-18c-apex: INSTALLER: APEX/ORDS Installation Completed
    oracle-18c-apex: INSTALLER: You can access APEX by your Host Operating System at following URL:
    oracle-18c-apex: INSTALLER: http://localhost:8080/ords/
    oracle-18c-apex: INSTALLER: Access granted with:
    oracle-18c-apex: INSTALLER: Workspace: internal
    oracle-18c-apex: INSTALLER: Username:  admin
    oracle-18c-apex: INSTALLER: Password:  ET0YUcE64uE=1


Days              : 0
Hours             : 0
Minutes           : 37
Seconds           : 31
Milliseconds      : 730
Ticks             : 22517306893
TotalDays         : 0.0260616977928241
TotalHours        : 0.625480747027778
TotalMinutes      : 37.5288448216667
TotalSeconds      : 2251.7306893
TotalMilliseconds : 2251730.6893

虽然还不太懂原理,但整个过程是走下来了。
详细的安装步骤可参见Oracle Application Express Release 19.1文档

Oracle Application Express is installed and enabled in Oracle Autonomous Database
services such as Oracle Autonomous Transaction Processing and Oracle Autonomous
Data Warehouse.
Oracle Application Express is available in Exadata Cloud Service and Database Cloud
Service in Oracle Cloud Infrastructure. However, you need to manually customize your
databases to install and enable Oracle Application Express by following on-premises
installation process or using cloud tooling such as Terraform.

APEX的运行依赖于Web listener,可以选择Oracle REST Data Services(ORDS),
Oracle HTTP Server或 Embedded PL/SQL gateway。本例选择了ORDS,这也是Oracle推荐的,另两个都认为是过时了。

APEX的架构描述:

Oracle Application Express uses a simple architecture where pages are dynamically
generated using metadata stored within the Oracle Database. There is no code generation
or file based compilation. Once fully installed, a Uniform Resource Locator (URL)
is defined for both developers and end users to access Oracle Application Express.
Users require only a Web browser and the required URL. No additional client software
is required.

在这里插入图片描述
上图中的Web Listener就是我们安装的ORDS,其实就是jetty,也可以部署在WebLogic和Tomcat上:

$ ps -ef|grep -i ords
oracle   28354     1  1 08:54 ?        00:00:27 /opt/oracle/product/18c/dbhomeXE/jdk/bin/java -jar /opt/oracle/ords/ords.war

再回顾一下,本例安装的APEX版本为19.1,支持的数据库版本为11.2.0.4或以上。APEX的开发环境需要XML DB,但运行环境不需要,但XML DB默认都安装了。

然后就可以使用APEX了:
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/stevensxiao/article/details/101388759

智能推荐

postman使用之三:API请求和查看响应结果-程序员宅基地

文章浏览阅读1k次。请求postman支持很多请求类型,界面左侧可以看到请求类型:get、post、put、patch等,右侧是发送和保存按钮,下方是请求支持的认证方式、信息头、信息体、私有脚本和测试结果。下面我们介绍下常用的get和put请求。get请求只需要选择get请求,输入接口地址,然后save,选择相应的文件夹post请求1. 选择get请求,输入接口地址,在header和body输..._postman怎么查询protobuf协议结果

KVM详解(八)——KVM虚拟机自启动_kvm虚拟机自动启动-程序员宅基地

文章浏览阅读3.1k次,点赞5次,收藏14次。今天继续给大家介绍Linux运维相关知识,本文主要内容是KVM虚拟机的自启动设置。一、KVM虚拟机自启动简介二、libvertd服务自启动三、磁盘自动挂载四、设置虚拟机自启动_kvm虚拟机自动启动

Kubuntu kde 好用的 快捷键_kde6 快捷键-程序员宅基地

文章浏览阅读7.9k次。1 krunner一般情况,这个东西可以呼唤出来,如果吧焦点设置在桌面上,但是当我们的焦点在其他应用中,敲击键盘上的字符就千呼万唤不出来了。一直都不知道怎么吧这个东西找出来,今天终于找到了解决方案。这个东西较 krunner。http://en.wikipedia.org/wiki/Run_command 既然找到了,我们把它加到系统的快捷键中。在 trigger 中添加对应的快捷_kde6 快捷键

SSL/TLS详解-程序员宅基地

文章浏览阅读3k次,点赞5次,收藏20次。面试问到Https加密协议,不太会?来看看这篇文章吧_ssl/tls

计算机网络——网线制作和局域网组建_网线制作和局域网组建实验-程序员宅基地

文章浏览阅读5.1k次,点赞10次,收藏40次。一、实验目的: 了解双绞线特性,掌握双绞线的分类与典型应用。 熟悉无屏蔽双绞线网线制作的标准和方法。 了解网线制作的技能技巧。 掌握测试仪的使用。 利用做好的网线通过交换机或路由器组建局域网。二、实验内容: 无屏蔽双绞线网线制作。 利用做好的网线通过交换机或路由器组建局域网。..._网线制作和局域网组建实验

小程序二维码和小程序带参数二维码生成-程序员宅基地

文章浏览阅读3.2k次。本文主要讲解小程序二维码的基本概念,帮助开发和运营人员更好的掌握小程序参数二维码,同时也包含小程序二维码官方文档解读,更好的掌握小程序参数二维码在业务中的使用一,小程序二维码小白介绍二,小程序二维码开发介绍三,小程序二维码生成介绍四,小程序二维码官方文档解读 一,小程序参数二维码小白篇介绍参数二维码的基础知识,让开发者和运营者知道什么是参数二维码1. 首先我们要了解,什...

随便推点

【愚公系列】2023年03月 .Net Core使用cpolar内网穿透功能实现钉钉回调事件的监听_alibabacloud.sdk.dingtalk-程序员宅基地

文章浏览阅读1w次,点赞6次,收藏7次。cpolar是一款拥有远程控制和内网穿透功能的软件。而且还可以监控端口的HTTP请求,利用实时的cpolar Web UI开发者工具,让您调试代码更容易。您可以监听所有隧道上的HTTP消息包,分析消息包的结构内容,找出问题点。还可以单击重放(Replay)按钮,重新发送该HTTP信令请求。_alibabacloud.sdk.dingtalk

html5制作涂鸦板,HTML5实现涂鸦板-程序员宅基地

文章浏览阅读1.3k次。最近闲的,看了看html5,强大的绘图功能让我惊奇,于是,写了个小玩意---涂鸦板,能实现功能有:画画,改色,调整画笔大小html5的绘图可以分为点,线,面,圆,图片等,点和线,这可是所有平面效果的基点,有了这两个东西,没有画不出来的东西,只有想不到的算法。先上代码了:html效果:好了,一个简陋的画图界面就搞好啦,下面开始写一些画线的代码$.Draw = {};$.extend($.Draw, ..._html涂鸦板

Ubuntu管理文件所有权和用户权限_ubuntu python生成的文件权限用户设置-程序员宅基地

文章浏览阅读1k次。简析chown和chmod用法 简析chown和chmod用法修改文件所有权--chown更改文件权限--chmod修改文件所有权–chown计算机网络实验在执行完python脚本后,由于以sudo模式启动,生成的文件夹所有者为root,文件夹右下角有小锁,其他用户没有访问修改的权力。用到语句:chown [选项] [更改目标所有者][:[更改目标组]] 文件名或:chown [选项] ..._ubuntu python生成的文件权限用户设置

用物理学突破深度学习理论瓶颈? Google-斯坦福发布《深度学习统计力学》综述论文,30页pdf阐述深度学习成功机制...-程序员宅基地

文章浏览阅读679次。来源:专知【导读】深度学习革新了很多应用,但是背后的理论作用机制一直没有得到统一的解释。最近来自谷歌大脑和斯坦福的学者共同在Annual Review ..._深度学习和力学理论结合

python画图保存成html格式、用浏览器打开页面为空白_无法在web浏览器中从python打开html文件,而是打开记事本...-程序员宅基地

文章浏览阅读1.0k次。Note that on some platforms, trying to open a filename using this function, may work and start the operating system’s associated program. However, this is neither supported nor portable.这里的问题是webbrows..._drawings保存html格式是空的

html5做在线音乐,html5实现在线响应式音乐播放器-程序员宅基地

文章浏览阅读915次。大概很早的时候就有想法做一个音乐播放器玩玩,以前可能还考虑过做APP,大一的时候第一个html的静态页面也是做的音乐网站,想想,大概小时候比较喜欢音乐吧。然而,现在入了前端大坑,就用h5做一个耍耍好了。功能不多,UI不美,But,练习了html5中audio及其API的使用。欢迎吐槽~功能思路分析用了这么多年的音乐播放软件,目前已是网易云音乐的重度用户。一个基本的音乐播放器基础功能有:播放、暂停、..._html5音乐播放器