Oracle 的密码过期规则是用 Profile 来管理的,系统默认只有一个 Profile(DEFAULT),该 profile 的密码过期规则为 180 天。那么如何修改 Oracle 数据库用户的密码过期时间为永不过期呢?下面通过本文给大家介绍下
Oracle Database,又名 Oracle RDBMS,或简称 Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。
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 如下:
- 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 数据库用户的密码过期时间如何修改为永不过期,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 PHPERZ 网站的支持!
来源: