多语言展示
当前在线:1030今日阅读:126今日分享:42

工作小技巧--根治 ORA-28001密码过期的问题

在使用Oracle数据库时,有时会报ORA-28001:the password has expired 的错误,具体问题是账号密码过期了,那该如何处理这种问题呢? 能否处理根除这个问题呢? 本篇经验就给你答案。
工具/原料

一台安装了Oracle数据库的电脑

方法/步骤
1

先看看问题,在连接数据库时,报了一个 ORA-28001:the password has expired 的错误。

2

我们先解决问题:1. 登陆安装了该Oracle的数据库服务器(如果是本机,则跳过该步骤)2. 打开命令行窗口(运行cmd),执行 sqlplus / as sysdba3. 然后执行如下变更语句,并提交:alter user 用户名 identified by 用户密码(此处写原始密码即可);commit;

3

再次登陆数据库,这次就直接登陆成功了。

彻底根治 ORA-28001密码过期的问题
1

为啥数据库账号的密码会过期呢?因为我们数据库中是这么配置的,在上面登陆的命令行终端上执行如下查询语句:select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';我们会发现默认配置文件中(我们的账号通常都使用这个默认配置文件),数据库账号密码的期限为 180 天。

2

那我们就将这个期限修改为无限期吧,这样这个问题就不会发生了,执行如下变更语句,并提交:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED ;

3

再次查看我们默认的配置文件的密码过期策略,已变更为永不过期。

注意事项

该变更会即时生效,无需重启数据库

推荐信息