Downloading and Installing Oracle APEX
Learn about downloading and installing APEX.
How you install Oracle APEX depends upon by the type of database into which you are installing. This chapter describes how to download and install Oracle APEX in self-managed databases, such as your laptop or your data center, or co-managed Cloud databases such as Database Cloud Service (DBaaS) and Exadata Cloud Service.
Tip: In fully managed Cloud databases, such as an Autonomous Database or Oracle APEX AI Application Generator (APEX Service), APEX is pre-installed and pre-configured, so you may skip the steps listed in this chapter. To learn more, refer to the documentation for your service.
For more information, see:
Installing APEX
Install Oracle APEX by downloading a ZIP file from the APEX download page.
Tip: APEX must be installed from a writable directory on the file system. See Reviewing a Log of an Installation Session.
To install APEX:
-
For installations where the development will be in English only, download the file
apex_26.2_en.zipfrom the APEX download page. If the development will include languages other than English, downloadapex_26.2.zipfrom the APEX download page. See:https://www.oracle.com/tools/downloads/apex-downloads.html
Note that the actual file name may differ if a more recent release has shipped since this document was published.
-
Unzip downloaded zip file:
-
If English only, unzip
apex_26.2_en.zipas follows, preserving directory names:-
UNIX and Linux:
$ unzip apex_26.2_en.zip -
Windows: Double click the file
apex_26.2_en.zipin Windows Explorer
-
-
If multiple languages, unzip
apex_26.2.zipas follows, preserving directory names:-
UNIX and Linux:
$ unzipapex_26.2.zip -
Windows: Double click the file
apex_26.2.zipin Windows Explorer
-
Note: You should keep the directory tree where you unzip the files short and not under directories that contain spaces. For example, within Windows, unzip to
C:\TEMP. -
-
Change your working directory to
apex. -
Start SQLcl and connect to the database where APEX is installed as
SYSspecifying theSYSDBArole. For example:-
On Windows:
<SYSTEM_DRIVE>:\ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password> -
On UNIX and Linux:
$ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password>
-
-
Disable any existing password complexity rules for the default profile.
-
Select the appropriate installation option.
Full development environment provides complete access to the App Builder environment to develop applications. A Runtime environment enables users to run applications that cannot be modified.
Available installation options include:
-
Full development environment. Run
apexins.sqlpassing the following four arguments in the order shown:@apexins.sql tablespace_apex tablespace_files tablespace_temp imagesWhere:
-
tablespace_apexis the name of the tablespace for the APEX application user. -
tablespace_filesis the name of the tablespace for the APEX files user. -
tablespace_tempis the name of the temporary tablespace or tablespace group. -
imagesis the virtual directory for APEX images. To support future APEX upgrades, define the virtual image directory as/i/.
Example:
@apexins.sql SYSAUX SYSAUX TEMP /i/Note:
If you receive the following error, exit SQLcl and change your working directory to where you unzipped the installation file, for example
C:\TEMPin Windows, before starting SQLcl:SP2-0310: unable to open file "apexins.sql" -
-
Runtime environment. Run
apxrtins.sqlpassing the following arguments in the order shown:@apxrtins.sql tablespace_apex tablespace_files tablespace_temp imagesWhere:
-
tablespace_apexis the name of the tablespace for the APEX application user. -
tablespace_filesis the name of the tablespace for the APEX files user. -
tablespace_tempis the name of the temporary tablespace or tablespace group. -
imagesis the virtual directory for APEX images. To support future APEX upgrades, define the virtual image directory as/i/.
Example:
@apxrtins.sql SYSAUX SYSAUX TEMP /i/ -
-
See Also:
-
Configuring Password Protection in Oracle AI Database Security Guide
-
Working with SQLcl in Oracle SQLcl User’s Guide
Creating or Updating Your Instance Administration Account
Learn how to create or update Instance Administrator account.
This section describes how to create or update your Instance Administrator account.
Tip: Skip this section if you are upgrading from a previous release of Oracle APEX. In an upgrade scenario, the Instance Administrator account and password is preserved and carried over from the prior release.
What Is an Instance Administrator?
Instance administrators are superusers that are responsible for managing an entire Oracle APEX instance, including managing workspace provisioning, configuring features and instance settings, and managing security.
To perform these tasks, an Instance administrator signs in to the Oracle APEX Administration Services application.
See Also: Oracle APEX Administration Services in Oracle APEX Administration Guide
About apxchpwd.sql
Running the apxchpwd.sql script enables you to create or update your Instance Administrator account.
Note: The apxchpwd.sql script is not supported on Oracle Autonomous AI Database and Oracle APEX AI Application Generator (APEX Service).
You must run the apxchpwd.sql script in the following scenarios:
-
New Oracle APEX installations - Run
apxchpwd.sqlto create an Instance Administrator account and password. -
Converting of a runtime environment to a development environment - Run
apxchpwd.sqlto change the Instance Administrator account password. -
Changing Your Instance Administrator Password -Run
apxchpwd.sqlto change the password for an existing Instance Administrator account. -
Unlocking Your Instance Administrator Account - Run
apxchpwd.sqlto unlock an existing Instance Administrator account.
Tip: You do not need to run apxchpwd.sql when upgrading from a previous release of Oracle APEX. In an upgrade scenario, the Instance Administrator account password is preserved and carried over from the prior release.
Running apxchpwd.sql
Run the apxchpwd.sql script to create and update your Instance Administrator account.
To create or update your Instance Administrator account:
-
Change your working directory to the
apexdirectory where you unzipped the installation software. -
Start SQLcl and connect to the database where Oracle APEX is installed as
SYSspecifying theSYSDBArole. For example:-
On Windows:
<SYSTEM_DRIVE>:\ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password> -
On UNIX and Linux:
$ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password>
-
-
Run
apxchpwd.sql. For example:@apxchpwd.sqlFollow the on-screen instructions. You will be prompted provide a username, password, and email address. If the account username does not exist, it will be created for you.
See Also: Working with SQLcl in Oracle SQLcl User’s Guide
Restarting Processes
Restart the processes that you stopped before you began the installation.
After you install Oracle APEX, you must restart the processes that you stopped before you began the installation.
Configuring the APEX_PUBLIC_USER Account
It is important to correctly configure the APEX_PUBLIC_USER account to enable proper operation of Oracle APEX.
About the APEX_PUBLIC_USER Account
The APEX_PUBLIC_USER account is created with no authentication in a new installation of Oracle APEX.
You must change the password for this account before configuring the database connection in ORDS if you change the configuration to use APEX_PUBLIC_USER instead of ORDS_PUBLIC_USER.
Changing the Password for the APEX_PUBLIC_USER Account
Change the password for the APEX_PUBLIC_USER account by running a SQL statement.
Tip: This step is not necessary if you are upgrading from a prior release of Oracle APEX, or you have not changed the ORDS configuration to connect as APEX_PUBLIC_USER instead of ORDS_PUBLIC_USER.
To change the password for the APEX_PUBLIC_USER account:
-
Start SQLcl and connect to the database where Oracle APEX is installed as
SYSspecifying theSYSDBArole. If Oracle APEX is installed in the CDB, ensure you connect toCDB$ROOT. For example:-
On Windows:
<SYSTEM_DRIVE>:\ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password> -
On UNIX and Linux:
$ sql /nolog SQL> CONNECT SYS as SYSDBA Enter password: <SYS_password>
-
-
Run the following statement:
ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_passwordWhere
new_passwordis the new password you are setting forAPEX_PUBLIC_USER. You will use this password when creating the DAD in the sections that follow.
About Password Expiration in Oracle Database
You can set PASSWORD_LIFE_TIME parameter to unlimited by altering APEX_PUBLIC_USER to prevent password expiration. To do this create another profile in which the PASSWORD_LIFE_TIME parameter is set to unlimited and alter the APEX_PUBLIC_USER account and assign it to the new profile.
In the default profile in Oracle AI Database, the parameter PASSWORD_LIFE_TIME is set to 180. If you are using Oracle AI Database with Oracle APEX, this causes the password for APEX_PUBLIC_USER to expire in 180 days. As a result, your APEX instance will become unusable until you change the password.
See Also: Oracle AI Database Security Guide for information on creating profiles and assigning them to database users
Configuring the APEX_PUBLIC_ROUTER Account
The APEX_PUBLIC_ROUTER account is a minimally privileged account used for an ORDS REST module to resolve friendly URLs.
About Sessions Per User in Oracle AI Database
On highly active systems, APEX_PUBLIC_ROUTER may reach the maximum number of sessions allowed in the database which results in a “Service Unavailable HTTP 503” error. You can set the SESSIONS_PER_USER parameter to “unlimited” by modifying APEX_PUBLIC_ROUTER to remove limit on the maximum number of sessions.
Create another profile in which the SESSIONS_PER_USER parameter is set to “unlimited” and modify the APEX_PUBLIC_ROUTER account and assign it to the new profile.
This behavior differs depending on your version of Oracle REST Data Services (ORDS). For ORDS 24.x and later, all GET requests that reference the /r/ path use an ORDS REST module.
If ORDS was updated after Oracle APEX, you must run sys.validate_apex.
After each ORDS upgrade or if ORDS is installed after APEX is installed, you must run the following as sys:
-- Run as SYS
set serveroutput on
begin
sys.validate_apex;
end;
/
See Also: DBA_PROFILES in Oracle AI Database Reference