ORA-28001: the password has expired
ORA-28001: 密码已过期

Cause:
      The user's account has expired and the password needs to be changed

Action:
      change the password or contact the DBA


如果已经过期了,首先需要修改密码,然后设置密码为无限期。修改以sys用户登陆。

修改密码:alter user username identified by password      密码可以和之前的密码相同也可以不同。

修改数据库密码为无限期:

Oracle的密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),该profile的密码过期规则为180天。当超出这个时间时,密码就会过期,数据库不能连接。 Oracle11g启动参数resource_limit无论设置为false还是true,密码有效期都是生效的。

查看 oracle 数据库的用户的密码过期时间(EXPIRY_DATE结果为空,表示 无限制 ):

select username,account_status,lock_date,expiry_date from dba_users;

一、直接修改用户对应的Profile的密码

1、查看用户的proifle是哪个,一般是default:

select username,PROFILE FROM dba_users;

2、查看指定概要文件(如default)的密码有效期设置:

select * FROM dba_profiles s Where s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

3、将密码有效期由默认的180天修改成“无限制”:

alter PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改之后不需要重启动数据库,会立即生效。

例如:

SQL> alter user t_admin identified by Passwd123#;

User altered.

SQL> set line 300;
SQL> 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 180 SQL> alter PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; Profile altered. SQL> 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 UNLIMITED SQL>

  

二、新建一个Profile文件,设置其密码,并设置其为当前用户的Profile文件

1、新建profile "PASSWD_UNLIMIT",规则与DEFAULT一致(因为一个profile中包含很多的项目,我们此时只想修改过期规则,其他的不变)
2、修改profile "PASSWD_UNLIMIT",修改过期规则为UNLIMITED
3、将'MESSERIES'用户适用新的profile "PASSWD_UNLIMIT"

SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
SELECT * FROM dba_profiles s ; --查看用户profile
select username, user_id, account_status,expiry_date, profile from dba_users where username = username; --1. 创建新的profile(PASSWD_UNLIMIT)复制DEFAULT的Script
CREATE PROFILE "PASSWD_UNLIMIT" LIMIT
SESSIONS_PER_USER UNLIMITED
CPU_PER_SESSION UNLIMITED
CPU_PER_CALL UNLIMITED
CONNECT_TIME UNLIMITED
IDLE_TIME UNLIMITED
LOGICAL_READS_PER_SESSION UNLIMITED
LOGICAL_READS_PER_CALL UNLIMITED
COMPOSITE_LIMIT UNLIMITED
PRIVATE_SGA UNLIMITED
FAILED_LOGIN_ATTEMPTS 10
PASSWORD_LIFE_TIME 180
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_REUSE_MAX UNLIMITED
PASSWORD_LOCK_TIME 1
PASSWORD_GRACE_TIME 7
PASSWORD_VERIFY_FUNCTION NULL; SELECT * FROM dba_profiles; --2. 修改新建的profile(PASSWD_UNLIMIT),密码过期为不过期
ALTER profile PASSWD_UNLIMIT limit PASSWORD_LIFE_TIME UNLIMITED; --3. 修改用户的Profile为新的profile
alter user username profile PASSWD_UNLIMIT;

  

ORA-28001: the password has expired 密码已过期的更多相关文章

  1. [转]ORA-28001: the password has expired解决方法

    本文转自:http://blog.csdn.net/btt2013/article/details/54862420 参考文献:http://www.zhetao.com/content259 后台报 ...

  2. ORACLE数据库登录显示ORA-28001: the password has expired

    Oracle数据库登录显示 "这个密码已过期,请输入新密码" 点击win键 找到Oracle的SQL Plus 点击打开之后输入登录的用户名密码,然后会显示该密码已过期,输入新口令 ...

  3. 由ORACLE:ORA-28001: the password has expired(密码过期)引起ODI资料库连接失败

    今天,连接ODI,出现下面的错误 oracle.odi.core.config.WorkRepositoryResourceFailureException: ODI-10182: 资料档案库访问期间 ...

  4. oracle用户密码过期!the password has expired

    Oracle提示错误消息ORA-28001: the password has expired,是由于Oracle11G的新特性所致, Oracle11G创建用户时缺省密码过期限制是180天(即6个月 ...

  5. Linux 密码过期(WARNING:Your password has expired )

    最近遇到两次这个问题,我们公司用的是开源的堡垒机Jumpserver但是最近有两个同学遇到了 WARNING:Your password has expired 第一次遇到这个问题也没有往深了去查,当 ...

  6. Oracle密码过期the password has expired解决办法

    oracle 出现the password has expired这个问题,今天突然发现项目访问不了,一查发现用不了,也登不进去, 这个问题由是Oracle11g密码过期的原因导致的 调试Web项目的 ...

  7. mysql密码过期的修改方法(your password has expired)

    今天打开SQLyog提示密码过期:Your password has expired 解决方法:    1.  启动MySQL服务 2.  启动MySQL后台 3.  执行以下命令 step 1: S ...

  8. mysql5.7密码过期ERROR 1862 (HY000): Your password has expired. To log in you must change

    环境: ubuntu14.04  mysql5.7 一.mysql5.7 密码过期问题 报错: ERROR 1862 (HY000): Your password has expired. To lo ...

  9. 2、mysql密码过期的修改方法(your password has expired)

    今天打开SQLyog提示密码过期:Your password has expired 解决方法:    1.  启动MySQL服务 2.  启动MySQL后台 3.  执行以下命令 step 1: S ...

随机推荐

  1. 微信小程序实现滚动视频自动播放(未优化)

    先看看大概效果 1.首先需要了解微信API:          wx.createIntersectionObserver(Object component, Object options) 创建并返 ...

  2. ByteCTF2019

    VIP 第一阶段: 先检查一下程序开的保护: 程序只开了canary和nx保护.接下来用IDA分析反编译出的伪代码 如上图,载edit函数中我们可以控制size的大小,并且程序没有做任何检查,我们再跟 ...

  3. 白嫖党看番神器 AnimeSeacher

    - Anime Searcher - 简介 通过整合第三方网站的视频和弹幕资源, 给白嫖党提供最舒适的看番体验~ 目前有 4 个资源搜索引擎和 2 个弹幕搜索引擎, 资源丰富, 更新超快, 不用下载, ...

  4. markdown基本语法说明

    作为一个java程序员,要接触的东西很多,时不时 就要学习,最近写文档的时候发现,markdown很有意思,就记录下来,作为一个简单的说明和学习 :    1.标题 # 这是一级标题 ## 这是二级标 ...

  5. 阿里云openssl升级,实现nginx主动推送,nginx主动推送能够有效减少不必要的报文传输,减少用户请求次数,以达到更快访问速度

    现有版本检查 [root@node3 ~]# openssl version               #这个版本是无法支持http2.0主动推送功能.需要升级为2019版本. OpenSSL 1. ...

  6. MySQL隐式转换的坑

    MySQL以以下规则描述比较操作如何进行转换: 两个参数至少有一个是 NULL 时,比较的结果也是 NULL,例外是使用 <=> 对两个 NULL 做比较时会返回 1,这两种情况都不需要做 ...

  7. C语言汇总2

    (10-15) 注释:1.单行注释可以嵌套单行注释 eg .//lalalal//lalalal(/后面都是注释完的) 2.多行注释可以嵌套单行注释 (两个**之间的都是注释的) 3.单行注释可以嵌套 ...

  8. SSM框架整合核心内容

    所需要的jar包及其版本 Spring 版本:4.3.18   tx.aop.beans.core.web.web-mvc.context.expression.jdbc MyBatis:3.4.6 ...

  9. matlab数据插值

    由图可见采样点前段比较稀疏,比较有规律,后段比较密集,比较复杂 这里的spline是三次样条插值 随着次数的增高,曲线在两端震荡的越来越剧烈 用上其他插值的方法 线性插值 最近点插值 分段三次米勒插值 ...

  10. Anaconda使用及管理

    接下来均是以命令行模式进行介绍,Windows用户请打开"Anaconda Prompt":macOS和Linux用户请打开"Terminal"("终 ...