Oracle的密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),该profile的密码过期规则为180天;
而所有的用户都使用该DEFAULT的profile,所以如果修改DEFAULT的过期规则会影响所有的用户;
所以我们新建一个profile,修改该profile的过期规则为无限期,在让某个用户适用于该profile,则该用户的过期规则会变更。
以下举例:修改MESSERIES用户的密码过期规则为UNLIMITED
1. 新建profile "PASSWD_UNLIMIT",规则与DEFAULT一致(因为一个profile中包含很多的项目,我们此时只想修改过期规则,其他的不变)
2. 修改profile "PASSWD_UNLIMIT",修改过期规则为UNLIMITED
3. 将'MESSERIES'用户适用新的profile "PASSWD_UNLIMIT"
SQL如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
SELECT * FROMdba_profiles s WHERE s.profile= 'DEFAULT' ANDresource_name= 'PASSWORD_LIFE_TIME' ; SELECT * FROMdba_profiles s ; --查看用户profile select username, user_id, account_status,expiry_date, profile from dba_users where username = 'MESSERIES' ; --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 * FROMdba_profiles; --2. 修改新建的profile(PASSWD_UNLIMIT),密码过期为不过期 ALTER profilePASSWD_UNLIMIT limit PASSWORD_LIFE_TIME UNLIMITED; --3. 修改用户的Profile为新的profile alter user MESSERIES profile PASSWD_UNLIMIT; |
以上所述是小编给大家介绍的Oracle数据库用户的密码过期时间如何修改为永不过期,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/jump_gu/article/details/54094287