启动weblogic报ORA-28001解决方式

发布时间 2023-09-25 16:54:22作者: MichaelMaDragon

Weblogic一个月不用,启动报如下错误(采用oracle数据库):

注:数据源配置:datasource.name.1=WM6_DS

<jta-data-source>jdbc/WM6_DS</jta-data-source>

<Sep 25, 2023 2:56:12 PM CST> <Notice> <WebLogicServer> <WL-000365> <Server state changed to STANDBY.>
<Sep 25, 2023 2:56:12 PM CST> <Notice> <WebLogicServer> <WL-000365> <Server state changed to STARTING.>
<Sep 25, 2023 2:56:12 PM CST> <Notice> <Log Management> <WL-170036> <The Logging monitoring service timer has started to check for logged message counts every 30 seconds.>
<Sep 25, 2023 2:56:12 PM CST> <Notice> <Security> <WL-090171> <Loading the identity certificate and private key stored under the alias DemoIdentity from the jks keystore file C:\Weblogic12.2.1.3\user_projects\domains\jzmd\security\DemoIdentity.jks.>
<Sep 25, 2023 2:56:12 PM CST> <Notice> <Security> <WL-090169> <Loading trusted certificates from the jks keystore file C:\WEBLOG~1.3\wlserver\server\lib\DemoTrust.jks.>
<Sep 25, 2023 2:56:12 PM CST> <Notice> <Security> <WL-090169> <Loading trusted certificates from the jks keystore file C:\PROGRA~1\Java\JDK18~1.0_2\jre\lib\security\cacerts.>
<Sep 25, 2023 2:56:13 PM CST> <Warning> <JDBC> <WL-001129> <Received exception while creating connection for pool "WM6_DS": ORA-28001: the password has expired

 

<Sep 25, 2023 2:56:13 PM CST> <Error> <Deployer> <WL-149231> <Unable to set the activation state to true for the application "WM6_DS".
weblogic.application.ModuleException: javax.transaction.SystemException: Failed to call registerLoggingResourceTransactions() weblogic.transaction.loggingresource.LoggingResourceException: weblogic.transaction.loggingresource.LoggingResourceException: weblogic.jdbc.extensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceException: Could not create pool connection for datasource 'WM6_DS'. The DBMS driver exception was: ORA-28001: the password has expired

 来源:https://blog.csdn.net/tkw951211/article/details/125365557

前言
登录数据库时,出现ORA-28001:the password has expired错误,原因是Oracle11g中默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”所致,处理方式如下:

解决方式
首先登录数据库的dba用户
查看用户的proifle是哪个:
SELECT username,PROFILE FROM dba_users;

查看用户密码的有效期:
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

将密码有效期设为永久:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改后,还没有被提示ORA-28001警告的用户账号不会再碰到同样的提示;而已经被提示的用户账号必须再修改一次密码:
alter user imes_intf3 identified by imesintf3 account unlock;
ALTER USER jzmdDB identified by jzmdDB account unlock;
如上:用户:imes_intf3 密码:imesintf3