Oracle默认在default概要文件中设置了“PASSWORD_LIFE_TIME=180天”,导致密码过期,程序无法使用,业务进程会提示无法连接数据库等字样。

--查询默认密码过期时间
SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

  

  密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),通过下面语句可查看到几乎所有的用户都使用该DEFAULT的profile,所以如果修改DEFAULT的过期规则会影响所有的用户。

--查询系统用户所使用的proifle
SELECT username,PROFILE FROM dba_users;

   

所以,修改分为两种:

1. 修改所有用户的密码永不过期

--修改所有用户的密码过期时间为无限制
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改之后会立即生效,还没有被提示ORA-28002警告的帐户不会再碰到同样的提示,已经被提示的帐户必须再改一次密码。

--再修改一次密码
alter user scott identified by 1234; --1234为scott用户原来的密码

2. 修改某个用户密码永不过期

需要三步:

1. 新建profile "TOOL_UNLIMITED",规则与DEFAULT一致(因为一个profile中包含很多的项目,我们此时只修改过期规则,其他的不变)

--创建新的profile(TOOL_UNLIMITED)复制DEFAULT的Script
CREATE PROFILE "TOOL_UNLIMITED" 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;

2. 修改profile "TOOL_UNLIMITED",修改过期规则为UNLIMITED

 --修改新建的profile(TOOL_UNLIMITED),密码过期为不过期
ALTER profile TOOL_UNLIMITED limit PASSWORD_LIFE_TIME UNLIMITED;

3. 将'TOOL'用户适用新的profile "TOOL_UNLIMITED"

--修改用户的Profile为新的profile
alter user TOOL profile TOOL_UNLIMITED;

最新文章

  1. 关于Spring的核心组件以及概念
  2. 云计算之路-阿里云上:13:43-13:44之间RDS故障影响了全站的正常访问
  3. ionic tabs置顶
  4. uva-10305
  5. C/C++使用HTTP协议上传
  6. xsltproc docbook 转 html
  7. 【转帖】四种BI 开源工具介绍-SpagoBI,openI,JasperSoft,Pentaho
  8. CXF+Spring 搭建的WebService
  9. QQ群里收集的外企iOS开发的笔试题
  10. Json串到json对象的转换
  11. Data Types
  12. rcp命令
  13. MediaChooser图库浏览器
  14. 51cto培训课程
  15. 关于Arduino 步进电机Stepper库的一些想法
  16. C#开发Windows窗体应用程序的步骤
  17. mysql 分组和聚合函数
  18. flask中如何生成迁移文件
  19. git+github/码云+VSCode (转载)
  20. MT【48】分式连加形式下求不等式解集的区间长度

热门文章

  1. bzoj 2565: 最长双回文串 manacher算法
  2. IPtables/NetFilter
  3. 修改Linux默认启动级别或模式
  4. 对printf函数的理解1
  5. Linux使用RPM安装软件
  6. Flex入门(一)——基本理论
  7. 探索并发编程(六)------Java多线程性能优化
  8. 解决HUE报错MultipleObjectsReturned: get() returned more than one Document2 -- it returned 2!
  9. Last-Modified和If-Modified-Since
  10. ajax成功返回数据中存在多余字符的处理