There is a 19c EBS notes.
In one of the most important EBS MOS Notes: 2552181.1 – Interoperability Notes: Oracle E-Business Suite
MOS Notes: 2552181.1 – Interoperability Notes: Oracle E-Business Suite Release 12.2 with Oracle Database 19c under section 2.5 you can read:
- For the PDB database, source the $ORACLE_HOME/<PDB SID>_<HOST>.env/cmd file.
If you are on UNIX/Linux, set the ORACLE_PDB_SID environment variable to <PDB SID>. Then, run sqlplus <user>/<password>@<PDB SID> or connect as SYSDBA.
Testing it:
export ORACLE_PDB_SID=joords_pdb sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Thu May 7 22:30:05 2020 Version 19.7.0.0.0 Copyright (c) 1982, 2020, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.7.0.0.0 SQL> show con_name CON_NAME ------------------------------ JOORDS_PDB
Remark:
You need to unset the variable setting if you want to connect to the CDB again as "sqlplus / as sysdba" => unset ORACLE_PDB_SID
This solution is aviable since ORACLE version 18.8.0
How this feature is working
Oracle has created an AFTER EVENT LOGON trigger. The trigger fires when you logon as SYS or SYSTEM. Logon Trigger settings:SQL> select trigger_body from dba_triggers where trigger_name = 'DBMS_SET_PDB' TRIGGER_BODY declare pdb_name varchar2(64); begin DBMS_SYSTEM.get_env ('ORACLE_PDB_SID', pdb_name); if(pdb_name is not null) then EXECUTE IMMEDIATE 'alter session set container = ' || '"' || pdb_name || '"'; end if; exception when others then NULL; end dbms_set_pdb;
No comments:
Post a Comment