Oracle Application Express 23.2 Installation Steps
Before installing Oracle Application Express, you must verify your configuration meets the minimum installation requirements.
• Oracle Database Requirements
Oracle Application Express release 23.2 requires an Oracle Database release 19c or later, including Enterprise Edition and Standard Edition (SE) and Database 23c Free. Oracle Application Express can be installed in single-instance database and in Oracle Real Application Clusters (Oracle RAC) database.
· Browser Requirements
Oracle APEX requires a JavaScript-enabled browser and supports the current and prior major release of Google Chrome, Mozilla Firefox, Apple Safari, and Microsoft Edge.
· Web Server Requirements
Oracle APEX requires Oracle REST Data Services (ORDS) 20.x or later. The use of Quick SQL requires Oracle REST Data Services (ORDS) 23.3 or later.
• MEMORY_TARGET of the Target Database
Oracle Application Express requires the system global area (SGA) and program global area (PGA) to be at least 300 MB.
• Checking the WORKAREA_SIZE_POLICY of the Target Database
For the Oracle APEX installation or upgrade process, the WORKAREA_SIZE_POLICY session parameter must be set to AUTO.
SQL> alter system set WORKAREA_SIZE_POLICY=auto scope=both;
• Oracle XML DB Requirement
Oracle XML DB must be installed in the Oracle database that you want to use if you are installing a full development environment. Oracle XML DB is not required for runtime only installations. If you are using a preconfigured database created either during an installation or by Database Configuration Assistant (DBCA), Oracle XML DB is already installed and configured.
Download Link: –
Oracle Application Express can be downloaded from HERE

Environment details: –
| OS | RHEL 7.9 |
| IP | 192.168.0.106 |
| HOSTNAME | Server3.soumya.com |
| APEX VERSION | 23.2 |
| DB VERSION | 19.3.0 |
Once downloaded, unzip the software to begin the installation.
Create a directory where the apex software will be installed.
[oracle@server3 u01]$ mkdir -p /u01/apex
[oracle@server3 apex]$ unzip apex_23.2.zip -d /u01/apex
Create a new tablespace for APEX.
| [oracle@server3 apex]$ sqlplus / as sysdba SQL> create tablespace APEX datafile ‘/u01/app/oradata/ORCL/apexd01.dbf’ size 2G autoextend on; |
Apex Installation: –
| [oracle@server3 apex]$ cd /u01/apex/apex [oracle@ocisoumya apex]$sqlplus / as sysdba SQL>@apexins.sql APEX APEX TEMP /i/ — i refers image location in application. APEX refers the tablespace name , TEMP refers the temporary tablespace name. |
Once the installation is complete, confirm it by running following query
| SYS> SELECT comp_name, version, status FROM dba_registry WHERE comp_id=’APEX’; COMP_NAME VERSION STATUS —————————— —————————— ———– Oracle APEX 23.2.0 VALID |
To change the admin password using “apxchpwd.sql” script as sys user.
| SQL> @apxchpwd.sql …set_appun.sql ================================================================================ This script can be used to change the password of an Oracle APEX instance administrator. If the user does not yet exist, a user record will be created. ================================================================================ Enter the administrator’s username [ADMIN] User “ADMIN” does not yet exist and will be created. Enter ADMIN’s email [ADMIN] Enter ADMIN’s password [] Created instance administrator ADMIN. |
For configuring static files, we must run apex_rest_config.sql after a new installation of Oracle APEX.
| SQL> @apex_rest_config.sql Enter a password for the APEX_LISTENER user [] Enter a password for the APEX_REST_PUBLIC_USER user [] …set_appun.sql …setting session environment …create APEX_LISTENER and APEX_REST_PUBLIC_USER users …grants for APEX_LISTENER and ORDS_METADATA user |
Configure APEX
Now there are two ways which we can use to access APEX.
1. Oracle REST Data Services(ORDS)
2. Embeded PL/SQL Gateway(EPG) Configuration
However Oracle recommendation is ORDS.
create a custom profile and assign the profile to standard users to avoid user lock issues.
| CREATE PROFILE app_user1 LIMIT FAILED_LOGIN_ATTEMPTS unlimited PASSWORD_LIFE_TIME unlimited PASSWORD_REUSE_TIME unlimited PASSWORD_REUSE_MAX unlimited PASSWORD_VERIFY_FUNCTION NULL PASSWORD_LOCK_TIME unlimited PASSWORD_GRACE_TIME unlimited; |
Alter all apex related users to assign custom profile.
| select username,account_status from dba_users where username like (‘%APEX%’); ALTER USER APEX_230200 PROFILE app_user1; ALTER USER APEX_LISTENER PROFILE app_user1; ALTER USER APEX_REST_PUBLIC_USER PROFILE app_user1; ALTER USER APEX_PUBLIC_USER PROFILE app_user1; |
Unlock the users:-
| ALTER USER APEX_LISTENER identified by Concept_ora1 account unlock; ALTER USER APEX_REST_PUBLIC_USER identified by Concept_ora1 account unlock; ALTER USER APEX_PUBLIC_USER identified by Concept_ora1 account unlock; |
Execute following to grant connect privileges to any host for the APEX_230200 database user. This example assumes you connected to the database where Oracle Application Express is installed as SYS specifying the SYSDBA role.
| BEGIN DBMS_NETWORK_ACL_ADMIN.append_host_ace ( host => ‘*’, ace => xs$ace_type(privilege_list => xs$name_list(‘connect’,’resolve’), principal_name => ‘APEX_230200’, principal_type => xs_acl.ptype_db)); END; / |


Leave a Reply