oracle 12c报错【ORA-28001:口令已经失效】解决办法

在程序使用oracle 12c的时候,报错【ORA-28001:口令已经失效】,程序无法连接到数据库。

从报错信息上可以看出是用户的口令(密码)失效了,查阅相关资料,发现oracle 12c会默认给每一个用户的口令180天的有效期,超过这个有效期口令就会失效,需要更改口令才能继续使用该用户。

以用户yanggb举例:

1.以系统管理员的身份登录到oracle的管理后台。

sqlplus / as sysdba

2.转到对应的user容器中。

alter session set container = db_meta;

3.修改密码。

-- alter user 用户名 identified by 密码;
alter user yanggb identified by yanggb;

4.再次尝试登录,即登录成功。

5.有时上述操作后,仍然提示用户锁定,可以执行解锁的语句解锁用户。

-- alter user 用户名 account unlock;
alter user yanggb account unlock;

这样,就解决了口令失效的问题,程序也能正常连接和访问数据库了。

"快乐可能很容易分享,难过却很难共情。"

你要去做一个大人,不要回头,不要难过。
原文地址:https://www.cnblogs.com/yanggb/p/14978519.html