A standard Oracle 11.2.0.3 database installation comes bundled with Application Express (APEX) 3.2.1 by default.  I’m going to upgrade to the latest version of APEX (currently 4.2.2) and then configure the Embedded PL/SQL Gateway (EPG), which uses the Oracle
XML DB HTTP components within the database itself, so I don’t need to run a separate HTTP server.

First off, download apex_4.2.2_en.zip from the following location and copy the zip file to your
database server:

http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html

Disable HTTP access and backup the existing binaries 

Connect as SYS and disable the Oracle XML DB HTTP server by temporarily setting the HTTP port to zero (if it’s already zero, then it’s not enabled):

sqlplus / as sysdba
SELECT dbms_xdb.gethttpport FROM dual;
EXEC dbms_xdb.sethttpport(0);

Backup and move the existing APEX binaries:

mv $ORACLE_HOME/apex $ORACLE_HOME/apex.3.2.1

Unzip the APEX 4.2.2 software and change directories ready for the install:

unzip /u01/app/oracle/software/apex_4.2.2_en.zip -d $ORACLE_HOME
cd $ORACLE_HOME/apex

Install APEX 4.2.2

Connect as SYS again, and create a new APEX tablespace (this is optional, but I prefer to keep things separate from the default SYSAUX tablespace):

sqlplus / as sysdba
CREATE TABLESPACE APEX DATAFILE '/u02/oradata/snap11g/apex_01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE 1000M LOGGING
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;

Check which version is currently installed:

COL comp_name FOR A30
SELECT comp_name, version, status FROM dba_registry WHERE comp_id='APEX'; COMP_NAME VERSION STATUS
------------------------------ ------------------------------ -----------
Oracle Application Express 3.2.1.00.12 VALID

Start the installation of 4.2.2:

@apexins APEX APEX TEMP /i/

Usage: @apexins <apex_tbs> <apex_files_tbs> <temp_tbs> <images>

apex_tbs – name of the tablespace for the APEX user.

apex_files_tbs – name of the tablespace for APEX files user.

temp_tbs – name of the temporary tablespace.

images – virtual directory for APEX images.  Define the virtual image directory as /i/ for future updates.

Once the installation has finished, reconnect and change the ADMIN account password:

sqlplus / as sysdba
@apxchpwd

NOTE: The password must contain at least one punctuation character: (!”#$%&()“*+,-/:;?_).

Check the registry again:

COL comp_name FOR A30
SELECT comp_name, version, status FROM dba_registry WHERE comp_id='APEX'; COMP_NAME VERSION STATUS
------------------------------ ------------------------------ -----------
Oracle Application Express 4.2.2.00.11 VALID

Run the Embedded PL/SQL Gateway configuration (EPG)

@apex_epg_config.sql /u01/app/oracle/product/11.2.0.3

Update the APEX images with those from the new release:

@apxldimg.sql /u01/app/oracle/product/11.2.0.3

NOTE: This step isn’t necessary if you ran the apex_epg_config.sql script above, as it will have already done this for you.  If you didn’t run the EPG script above, because you’ve upgraded from an install where EPG was already configured, then
you do need to run this.

Make sure that the following accounts are unlocked:

ALTER USER anonymous ACCOUNT UNLOCK;
ALTER USER xdb ACCOUNT UNLOCK;
ALTER USER apex_public_user ACCOUNT UNLOCK;
ALTER USER flows_files ACCOUNT UNLOCK;

Configure database parameters for APEX

Check that the JOB_QUEUE_PROCESSES parameter is set to at least 20:

SHOW PARAMETER job_queue_processes
ALTER system SET job_queue_processes=20 scope=both;

For a small group of concurrent users, Oracle recommends a value of 5 for SHARED_SERVERS:

SHOW PARAMETER shared_servers
ALTER system SET shared_servers=5 scope=both;

Enable network services (ACL) and XML DB HTTP server

Re enable the Oracle XML DB HTTP Server port (8082):

EXEC dbms_xdb.sethttpport(8082);

Enable remote HTTP connections (optional):

EXEC dbms_xdb.setListenerLocalAccess(l_access => FALSE);

If l_access is set to TRUE, setListenerLocalAccess allows access to the XML DB HTTP server on the localhost only.

If l_access is set to FALSE, setListenerLocalAccess allows access to the XML DB HTTP server on both the localhost and non-localhost interfaces i.e. remote connections.

By default, the ability to interact with network services is disabled in Oracle Database 11g. Therefore, you must use the DBMS_NETWORK_ACL_ADMIN package to grant connect privileges to any host for the APEX_040200 database user:

DECLARE
ACL_PATH VARCHAR2(4000);
BEGIN
-- Look for the ACL currently assigned to '*' and give APEX_040200
-- the "connect" privilege if APEX_040200
-- does not have the privilege yet.
SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS
WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;
IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040200',
'connect') IS NULL THEN
DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH,
'APEX_040200', TRUE, 'connect');
END IF;
EXCEPTION
-- When no ACL has been assigned to '*'.
WHEN NO_DATA_FOUND THEN
DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml',
'ACL that lets power users to connect to everywhere',
'APEX_040200', TRUE, 'connect');
DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*');
END;
/
COMMIT;

Finally, login and check everything is working…

Administration Services login page (used for managing the APEX instance): http://linux03.vbox:8082/apex/apex_admin

NOTE: You’ll be prompted to change the ADMIN password the first time you logon.

Username: ADMIN

Password: *****

Workspace login page: http://linux03.vbox:8082/apex

Workspace: INTERNAL

Username: ADMIN

Password: *****

Once you’re logged in, you’ll see something like this…

Removing previous versions of APEX

If later on you decide to clean-up and remove older versions of APEX, you can run the following SQL to identify such schemas:

SELECT username
FROM dba_users
WHERE (username LIKE 'FLOWS_%' OR username LIKE 'APEX_%')
AND username NOT IN (
SELECT 'FLOWS_FILES'
FROM dual
UNION
SELECT 'APEX_PUBLIC_USER' FROM dual
UNION
SELECT schema
FROM dba_registry
WHERE comp_id = 'APEX');

…and then drop the schema(s), with the cascade option:

DROP USER APEX_030200 CASCADE;

Oracle APEX 4.2安装和配置的更多相关文章

  1. Oracle 11g 客户端的安装和配置。

    原文:Oracle 11g 客户端的安装和配置. 数据库和客户端在不同的机器之上. 在安装之前,在安装Oracle数据库的服务器上导航到下面的目录. 将listener.ora和tnsnames.or ...

  2. Oracle的下载、安装和配置

    win10下Oracle的下载.安装和配置     --------------siwuxie095                 1.首先到Oracle官网下载Oracle,中文版官网,传送阵:点 ...

  3. Linux平台oracle 11g单实例 安装部署配置 快速参考

    1.重建主机的Oracle用户 组 统一规范 uid gid 以保证共享存储挂接或其他需求的权限规范 userdel -r oracle groupadd -g 7 oinstall groupadd ...

  4. Oracle 11g client的安装和配置。

    数据库和client在不同的机器之上. 在安装之前,在安装Oracle数据库的server上导航到以下的文件夹. 将listener.ora和tnsnames.ora中的host中的localhost ...

  5. Windows下Oracle的下载与安装及配置

    一.Oracle下载 官网地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 百 ...

  6. Oracle数据库的下载安装和配置

    前言·为了学习ORDBMS,下载一个Oracle数据库用来练习. 下载 我个人学习使用就没必要企业版 注册并登录Oracle官网 https://www.oracle.com 找到产品下载: 数据库: ...

  7. Oracle 11g+Windows10 x64安装、配置过程记录

    备注:本想在自己电脑上安装个oracle练习用,但是害怕安装过程中出现问题,而oracle的卸载又是出了名的麻烦,所以用虚拟机搭建了一个跟本机一样的系统,同时记录下安装的每一步. 环境:windows ...

  8. Oracle在VMware虚拟机安装的配置

    我是在VMware虚拟机上安装的Oracle , 我只说说我踩过的几个坑吧. VMware的虚拟网络编辑器 仅主机模式相当于在你的主机和虚拟机之间建立了一个局域网,里面只有你的主机和虚拟机 可以通过D ...

  9. Oracle 10g客户端的安装和配置

    1.双击Oracle11g_database安装目录下的Setup.exe. 2.选择“基本安装”,设置“安装位置”,填写“数据库名”和“口令”,点击“下一步”. 3.点击“下一步”. 4.一般会出现 ...

随机推荐

  1. JAVA基础——网络编程之网络链接

    一.网络编程基本概念 1.OSI与TCP/IP体系模型 2.IP和端口 解决了文章最开始提到的定位的问题. IP在互联网中能唯一标识一台计算机,是每一台计算机的唯一标识(身份证):网络编程是和远程计算 ...

  2. Hadoop集群安装指南(CHD5.9.1)(分布式+图文详解)

    centos7.1,CDH5.9.1,3台机器,终极指导安装 下载链接如下: 安装文件下载链接如下: 链接:https://pan.baidu.com/s/1RQYNiWn9a-T8GXcCsoDBs ...

  3. Floyd算法简单实现(C++)

    图的最短路径问题主要包括三种算法: (1)Dijkstra (没有负权边的单源最短路径) (2)Floyed (多源最短路径) (3)Bellman (含有负权边的单源最短路径) 本文主要讲使用C++ ...

  4. JavaScript基础对象---Map

    一.创建Map对象 Map 对象保存键值对.任何值(对象或者原始值) 都可以作为一个键或一个值 1.构造函数 语法:new Map([iterable])参数:         iterable  可 ...

  5. ActiveMQ windows安装

    下载ActiveMQ 官方网站:http://activemq.apache.org/ 下载,解压缩 以前台安装 ctiveMQ默认使用的TCP连接端口是61616, 通过查看该端口的信息可以测试Ac ...

  6. LeetCode(71) Simplify Path

    题目 Given an absolute path for a file (Unix-style), simplify it. For example, path = "/home/&quo ...

  7. POJ 1611 The Suspects (并查集求数量)

    Description Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, wa ...

  8. 【随机化算法】codeforces Matrix God

    http://codeforces.com/gym/101341 [题意] 给定三个方阵A,B,C,问AB=C是否成立? 方阵的规模最大为1000 [思路] 求AB的时间复杂度为n*n*n,会超时 左 ...

  9. [转]maven编译时出现读取XXX时出错invalid LOC header (bad signature)

    maven编译时出现读取XXX时出错invalid LOC header (bad signature) 一.发现问题右击pom.xml,run as —> maven install,会看到c ...

  10. JS把数字金额转换成中文大写数字的函数

    //把数字金额转换成中文大写数字的函数 function num2rmb ($num){ $c1="零壹贰叁肆伍陆柒捌玖"; $c2="分角元拾佰仟万拾佰仟亿" ...