APEX_LISTENER and APEX_REST_PUBLIC_USER are not being created
-
07-02-2021 - |
Frage
I am trying to install APEX 19.1 on ORACLE XE 18c but the problem is that APEX_LISTENER and APEX_REST_PUBLIC_USER are not being created. While I execute apex_rest_config.sql script via sqlplus, an error message appears saying: GetConsoleMode failed, Last Error=|6|
Then I check the list of users and I see that these two users are not created. Is this a bug of APEX installation? Please can anybody help?
Lösung
That is because you tried installing APEX in the root container, I was able to reproduce the error.
Oracle Express Edition 18c uses the CDB architecture, meaning you have a root container and a pluggable database called XEPDB1.
Whatever you did, you should do it inside the XEPDB1
pluggable database instead of the CDB$ROOT
root container. I am not saying it can not work like that, I just would not bother with it.
Understanding the Installation Choices
Oracle recommends removing Oracle Application Express from the root container database for the majority of use cases, except for hosting companies or installations where all pluggable databases (PDBs) utilize Oracle Application Express and they all need to run the exact same release and patch set of Oracle Application Express.
So if you log in with sqlplus / as sysdba
, you can change to XEPDB1
like this:
Connected to:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
SQL> alter session set container=XEPDB1;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
XEPDB1
To fix what you have, just log in with sqlplus / as sysdba
and remove everything with apxremov.sql
. Then log in like above, into the XEPDB1
pluggable database, and try again installing APEX. You can use these steps: