ORA-65036: pluggable database not open in required mode

When clone a pluggable database from remote CDB database, the following error occurs:

SQL> create pluggable database PDB1 from PDB1@remote_db_link;
create pluggable database PDB1 from PDB1@remote_db_link
*
ERROR at line 1:
ORA-17628: Oracle error 65036 returned by remote Oracle server
ORA-65036: pluggable database not open in required mode

SOLUTION

Make sure source PDB is opened on all instances, otherwise on source CDB:

SQL>  alter pluggable database pdb1 open instances=all;


Pluggable database altered.

If still not working, then check “LOCAL_UNDO_ENABLED” enabled or not.

What is SYSRAC ?

The SYSRAC administrative privilege is used only by the Oracle agent of Oracle Clusterware to connect to the database using operating system authentication.

Unlike SYSDBA, SYSDG, SYSBACKUP and SYSKM , the SYSRAC privilege only allows OS authentication by the Oracle agent of Oracle Clusterware. Password files and strong authentication cannot be used with the SYSRAC privilege.

SQL> grant sysrac to testuser container=all;

grant sysrac to testuser container=all
*
ERROR at line 1:
ORA-28190: SYSRAC administrative privilege cannot be granted to other users

The administrative privilege SYSRAC is not supported in the password file.

When you create an Oracle database, the following users are automatically created to facilitate separation of duties for database administrators: SYSBACKUPSYSDGSYSKM, and SYSRAC.

  • SYSBACKUP facilitates Oracle Recovery Manager (RMAN) backup and recovery operations either from RMAN or SQL*Plus.
  • SYSDG facilitates Data Guard operations. The user can perform operations either with Data Guard Broker or with the DGMGRL command-line interface.
  • SYSKM facilitates Transparent Data Encryption keystore operations.
  • SYSRAC facilitates Oracle Real Application Clusters (Oracle RAC) operations by connecting to the database by the Clusterware agent on behalf of Oracle RAC utilities such as SRVCTL.
  • The SYSRAC administrative privilege cannot be granted to database users and is not supported in a password file. The SYSRAC administrative privilege is used only by the Oracle agent of Oracle Clusterware to connect to the database using operating system authentication.

SYSBACKUPSYSDGSYSKM, and SYSRAC user accounts cannot be dropped.

Could not load program sqlplus:Dependent module libsqlplus.so could not be loaded. Could not load module libsqlplus.so

Trying to run sqlplus from Oracle 19c client on AIX, the following errors occur:

$ sqlplus

Could not load program sqlplus:
Dependent module libsqlplus.so could not be loaded.
Could not load module libsqlplus.so.
System error: No such file or directory

SOLOTION

$ oslevel

7.1.0.0

$ export LIBPATH=$LIBPATH:/u01/oracle/product/19.0.0/client_1/lib

It seems AIX does not use LD_LIBRARY_PATH.

ORA-28007: the password cannot be reused

Tring to change the user password to an old one, it failed:

SQL> alter user tester identified by "Welcome123#test";

alter user tester identified by "Welcome123#test";
*
ERROR at line 1:
ORA-28007: the password cannot be reused

SOLUTION

Check the profile used by user tester.

SQL> alter profile  default limit PASSWORD_REUSE_MAX unlimited;


Profile altered.

SQL> alter user tester identified by "Welcome123#test";

User altered.

SQL> alter profile default limit PASSWORD_REUSE_MAX 10;

Profile altered.

SQL> alter user tester identified by "Welcome123#test";
alter user tester identified by "Welcome123#test";
*
ERROR at line 1:
ORA-28007: the password cannot be reused

EM 13c: The agent has been blocked by the OMS

OEM agent was blocked with the following messages in agent log:

...
..
.
2023-12-05 20:16:59,448 [158:905DEBE9] INFO - The agent has been blocked by the OMS.
2023-12-05 20:16:59,448 [158:905DEBE9] INFO - Reason the OMS blocked the agent: Resync
...
..
.

SOLUTION

  1. Perform agent resynchronization from OEM console.

    AND / OR
  2. Modify bounceCtr value in agntstmp.txt file to one less than repository value and save it.
Get Bounce_CTR value from repository database as SYSMAN:


SQL>select BOUNCE_CTR from MGMT_EMD_PING where TARGET_GUID=(select target_guid from mgmt_targets where target_name ='<agent_home>:<port>');
BOUNCE_CTR
29

For a health agent, bounceCtr value in agntstmp.txt file must be at 119.

$emctl stop agent

2. Take backup of file and edit agntstmp.txt from <AGENT_HOME>/agent_inst/sysman/emd/


From
bounceCtr=88
To
bounceCtr=28

3. Save file and start agent

$emctl start agent