oracle_pdbs:
- cdb: CDB1
pdb_name: PDB1
state: present
apex_state: present
apex_version: 24.1
apex_patchid: 36695709
APEX and ORDS
|
Important
|
The installation of APEX and ORDS with ansible-oracle is currently experimental.
|
Requirements
APEX
-
RDBMS 19c or newer
-
APEX 20.x or newer is mandatory for RDBMS 19c
-
Tested with APEX 23.2, 24.1 - may work with older versions as well
-
Installation is tested with PDB only.
-
CDB and nonCDB is not supported at the moment.
-
Download ZIP from Oracle with Playbook
patch_download.ymlsupported for Version 22.1 or newer -
APEX only with ORDS - no old APEX Listener
Important Notes:
-
Primary Note for Oracle APEX Upgrades (Doc ID [1088970.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1088970.1))
Known Issues:
-
ADMIN password of INTERNAL Workspace is wrong after APEX upgrade.
Silent script to reset ADMIN password depends on APEX Relöease.
There was no reliable solution found at the moment…
ORDS
-
OracleLinux 8 or 9 only
-
Installation with
ords.rpmfrom https://public-yum.oracle.com -
Limited database configuration - see documentation
APEX Configuration
|
Important
|
Install APEX before ORDS - otherwise, the ORDS will not detect and configure APEX. ORDS is only tested with existing APEX installation. |
Mandatory variables
The following global variables are needed for an APEX installation.
| Value | Description |
|---|---|
|
The parameter is mandatory, because it is the only way to configure a password for the admin user at the moment. |
| Value | Description |
|---|---|
|
Default: |
|
Default: |
|
Default: |
|
Default: |
APEX in PDB
APEX can be installed in each PDB.
| Value | Description |
|---|---|
|
State for APEX installation. |
|
Version of APEX. |
| Value | Description |
|---|---|
|
Custom APEX Tablespace. |
|
Custom APEX Tablespace for files. |
|
Custom APEX temporary Tablespace. |
|
Patchid for PSE BUNDLE FOR APEX |
|
Important
|
The example shows the minimum attributes for an APEX installation. That’s not the minimum needed to create a PDB. |
oracle_pdbs|
Important
|
oraapex does not use the default passwords from ansible-oracle.You have to define them in dbpasswords.
|
The user APEX_PUBLIC_ROUTER is new in APEX 24.1.
oraapex checks for an existing password regardless of the version of APEX.
dbpasswords for APEX in a PDB with mandatory values for oraapexdbpasswords:
CDB1:
PDB1:
apex_public_router: ords123
apex_public_user: ords123
apex_rest_public_user: ords123
ords_public_user: ords123
|
Important
|
Do not forget to download the APEX Patch when apex_patchid is set in oracle_pdbs.opatch_install is very important, because these Patches are not applied with OPatch.
|
oracle_sw_patchesoracle_sw_patches:
- filename: p36695709_2410_Generic.zip
patchid: 36695709
version: 24.1
description: PSE BUNDLE FOR APEX 24.1
opatch_needed: false
Playbook execution
The installation of APEX is part of playbooks/manage_db.yml.
This allows the creation of custom Tablespaces, Profiles etc. for APEX, without the need to use a dedicated Playbook.
ORDS Configuration
|
Important
|
The configuration of ORDS is limited to the following variables at the moment. |
| Value | Description |
|---|---|
db_pool |
Database Pool |
pdb_name |
PDB-Name of Target |
service |
Database Service Name |
port |
Listener Port |
host |
Database Hostname |
| Value | Description |
|---|---|
feature_db_api |
true / false (Default) |
feature_rest_enabled_sql |
true / false (Default) |
feature_sdw |
true / false (Default) |
oraords_db_pools:
- db_pool: default
pdb_name: PDB1
admin_user: sys
service: pdb1
port: 1521
host: "{{ inventory_hostname }}"
feature_db_api: true
feature_rest_enabled_sql: true
feature_sdw: true
The passwords for Admin- and ORDS-User are defined in oraords_db_pools_password.
They are set in a dedicated variable to prevent no_log=true in loops over oraords_db_pools.
Referencing dbpasswords helps to reduce redundancy for passwords.
oraords_db_pools_password:
default:
admin_password: "{{ dbpasswords['DB1']['sys'] }}"
ords_password: "{{ dbpasswords['DB1']['PDB1']['ords_public_user'] }}"
Playbook execution
The Playbook playbooks/manage_ords.yml is used to install ORDS.