ITPub博客

首页 > 数据库 > Oracle > Oracle用户密码重置

Oracle用户密码重置

原创 Oracle 作者:Root__Liu 时间:2019-02-20 13:44:58 0 删除 编辑

客户反馈Oracle数据库用户密ma会过期,为了避免过期导致应用连接出错,可提前cha找即将过期的用户,重置密ma。步骤如下:

1、查看未来20天内是否会有密ma过期

set lines 200
col username for a20
select USERNAME,to_char(EXPIRY_DATE,'yyyy-mm-dd hh24:mi:ss') expire_time,profile,account_status from dba_users a where   EXPIRY_DATE<sysdate +20 and EXPIRY_DATE >sysdate and account_status='OPEN';

2、查看过期用户

set lines 200
col profile for a20
col username for a20
select USERNAME,to_char(EXPIRY_DATE,'yyyy-mm-dd hh24:mi:ss'),profile,account_status  from dba_users where account_status='EXPIRED' or account_status='EXPIRED(GRACE)' order by EXPIRY_DATE ;

3、查看open状态用户的过期时间

set lines 200
col profile for a20
col username for a20
select USERNAME,to_char(EXPIRY_DATE,'yyyy-mm-dd hh24:mi:ss'),profile,account_status  from dba_users where account_status='OPEN' order by EXPIRY_DATE ;

4、查看所有用户状态

set lines 200
col profile for a20
col username for a20
select USERNAME,to_char(EXPIRY_DATE,'yyyy-mm-dd hh24:mi:ss'),profile,account_status  from dba_users order by EXPIRY_DATE ;

5、进行密ma重置

   修改profile设置

alter profile PROFILE_NAME limit
password_reuse_time unlimited
password_reuse_max unlimited;

   生成重置命令

select 'alter user '||du.username||' identified by values '||''''||u.password||''''||';' from dba_users du,user$ u
  where du.username=u.name and u.type#=1 
  and du.profile in('PROFILE_NAME') 
and du.username<>'XS$NULL' and du.expiry_date-sysdate<=30;

   修改profile设置

alter profile PROFILE_PRODUCT limit
  password_reuse_time 60
  password_reuse_max 5;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31546994/viewspace-2636452/,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORA-01555错误分析
请登录后发表评论 登录
全部评论

注册时间:2018-08-08

  • 博文量
    22
  • 访问量
    44498