Thursday, November 15, 2018

Oracle JCS - Weblogic server Issue Resolution

Error/Issue

Admin server is working but other servers are not working in JCS weblogic server.
Below error is given in the weblogic server admin output.

WARNING: Can not connect DB with URL jdbc:oracle:thin:@//xxx:1526/TEST.5679382404.oraclecloud.internal
java.sql.SQLException: ORA-28001: the password has expired

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:466)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:391)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:1126)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:507)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:546)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:269)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:440)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:1025)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:682)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:793)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:33)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:614)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)

Root Cause

Database user passwords have been expired

Resolution

Connect to cdb using SQLPLUS <USERNAME>/<PASSWORD>

ALTER SESSION SET CONTAINER= <PDB1>;

SELECT username, account_status from CDB_USERS where ACCOUNT_STATUS like 'EXP%' and username like '%SP%';

SP549992516_STB
SP549992516_MDS
SP549992516_OPSS
SP549992516_IAU_APPEND
SP549992516_IAU_VIEWER

You will get output of all the users with account expired. Now follow one of the below solution.

1) One solution is to alter the OPSS database schema so the password is the same as specified when the Infrastructure domain was configured.

alter user <schema prefix>_OPSS identified by <original_pwd_here>;
By default the schema password is set to Weblogic Administrator password during the provisioning of the Oracle Java Cloud Service instance.
Altering the database user in this way will reactivate the account if it has expired. If the original password is used, no action is required to reconfigure JPS and the OPSS jdbc datasource (as shown below).

OR

2) You follow the note below to change the User password (only if you do not know the password):

<FMW 12c Infrastructure AdminServer / NodeManager Fail to Start : ORA-28001: password has expired or ORA-01017: invalid username/password; ( Note 1682942.1 )>

Reference 

https://docs.oracle.com/en/cloud/paas/java-cloud/jscug/changing-database-schema-password.html#GUID-3290C685-E975-460E-94AE-419406092FE0
https://docs.oracle.com/en/cloud/paas/java-cloud/jscug/problems-failure-running-service-when-schema-user-password-expires.html

No comments:

Post a Comment