错误是提示密码快过期了,有两个办法解决这个问题。
一. 修改已经报错用户的密码
已经被报告了密码快要过期的账户必须再改一次密码(需要DBA权限)
以system用户为例
sqlplus / as sysdba
alter user system identified by root;
再连接数据再也不会出现密码过期的事情了。
二. 将密码设为永不过期
1.查看用户的profile设置:
SELECT username,profile FROM dba_users;
一般用户的profile设置都为DEFAULT。
2.查看系统profiles中PASSWORD_LIFE_TIME设置。
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME'; PROFILE RESOURCE_NAME RESOURCE LIMIT ------------------------------ -------------------------------- ------------------------------------------------ DEFAULT PASSWORD_LIFE_TIME PASSWORD 180dys ==============================================================
3.修改DBA_PROFILES中PASSWORD_LIFE_TIM的设置,改为ULIMITED。
alter profile default limit password_life_time unlimited;
修改后设置立即生效,不需要重启数据库,此时密码永远不会过期。