Oracle数据库连接的账号密码过期的解决教程
对于初学者,安装Oracle后第一次使用developer开发工具,建立新的连接需要账号和密码,我使用的是system的账号登录(如下图),密码设置为管理口令密码,一般输入好并配置好环境后,都会采取保存的操作,等下次登录时,可直接连接,但经过180天后需要此账号密码过期,则需要重新更新密码。
到了过期时间时,再次连接数据是会报错,报错信息如下图
过期提示:ORA-28001:the password has expired
解决的方法:
一。去重新该账号的密码:
1.能够记住账号和旧密码时:打开电脑的CMD,输入SQLplus,再输入该账号:system 和旧的密码,如没有过期则如下图所示。如过期则会提示过期,请重新修改密码。
2.忘记了旧密码:则采用超级管理员sysdba的身份修改。
a.打开cmd控制台,输入sqlplus/nolog指令启动与oracle数据库进行交互的客户端工具SQL*PLUS
b.键入connect/as sysdba
进行操作系统身份认证,实现无密码登陆;
c.键入alter user system account unlock;
解锁system用户
d.键入alter user system identified by "123456";
修改system用户密码(如果密码为数字,要加双引号);
二。重新去更改该账号的有效期
1. 打开cmd,登录system账号
2.查询有效期时间语句:
SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT'
AND resource_name='PASSWORD_LIFE_TIME';
3.更改有效时间语句:
--更新为不限期
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;
--更新为180天
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 180;
--更新为30天
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 30;
PS:本人也是在学习的路上,希望能互相学习和进步。