ORA-28002:the password will expire within 7 days解决方法

今天在使用sqlplus登录Oracle数据库时提示密码过期了

ERROR:
ORA-28002: the password will expire within 7 days

原因

Oracle11g默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180”,Oracle用户的密码必须在180天内更改,否则启动数据库时会提示连接失败

解决方法:将密码设为永不过期

  1. 使用具有管理权限的用户(eg. syssystem)登录
    (注:这点肥肠重要!!我的情况是自己的scott用户快要过期了,而scott用户没有dba权限,在执行第二步操作时会报’ORA-00942: 表或视图不存在’错误)
sqlplus sys/<sysの密码> as sysdba

sqlplus system/<systemの密码>
  1. 查看用户的profile设置,一般是default
SELECT username,profile FROM dba_users;
  1. 查看指定概要文件(如default)的密码有效期,一般是180天
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
  1. 将密码有效期由默认的180天修改成“无限制”
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改后设置立即生效,不需要重启数据库,此时密码永远不会过期。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值