时间:2021-07-01 10:21:17 帮助过:22人阅读
sql>SELECT username,PROFILE FROM dba_users;
USERNAME PROFILE
------------------------------ ------------------------------
SCOTT DEFAULT
EXFSYS DEFAULT
ORDSYS DEFAULT
MDSYS DEFAULT
FLOWS_FILES DEFAULT
OMUADM DEFAULT
SYSTEM DEFAULT
SYS DEFAULT
VPXADMIN DEFAULT
2、查看指定概要文件(如default)的密码有效期设置:
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
3、如果在这里将密码有效期由默认的180天修改成“无限制”,则影响的是所有用户:
sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
修改之后不需要重启动数据库,会立即生效。
注意:修改后,还没有被提示ORA-28002警告的帐户不会再碰到同样的提示;
已经被提示的帐户必须再改一次密码,例如
$sqlplus / as sysdba
sql> alter user vpxadmin identified by <原来的密码> ----不用换新密码
那么如果你要为某个用户设置密码永不过期,可以这样来做。比如修改vpxadmin用户的密码过期规则为无限期UNLIMITED,只需要三个步骤:
1. 新建profile "VPXADMIN_UNLIMIT",规则与DEFAULT一致(因为一个profile中包含很多的项目,我们此时只想修改过期规则,其他的不变)
2. 修改profile "VPXADMIN_UNLIMIT",修改过期规则为UNLIMITED
3. 将‘VPXADMIN‘用户适用新的profile "PASSWD_UNLIMIT"
1. 创建新的profile(VPXADMIN_UNLIMIT)复制DEFAULT的ScriptCREATE PROFILE "VPXADMIN_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 profile FROM dba_profiles;PROFILE
------------------------------
DEFAULT
VPXADMIN_UNLIMIT
已创建成功。
--2. 修改新建的profile(VPXADMIN_UNLIMIT),密码过期为不过期ALTER profile VPXADMIN_UNLIMIT limit PASSWORD_LIFE_TIME UNLIMITED;--3. 修改用户的Profile为新的profilealter user VPXADMIN profile VPXADMIN_UNLIMIT;
再验证一下,果然就可以了!
本文出自 “滴水穿石孙杰” 博客,请务必保留此出处http://xjsunjie.blog.51cto.com/999372/1922101
oracle如何修改单个用户密码永不过期
标签:oracle 用户密码