Profile的作用主要表现在三个方面
 1、密码策略
 2、对用户所能使用的资源进行管理
 3、profile存放在数据字典里面,默认有一个名字为default的profile
set linesize 160
 set pagesize 30
 select resource_name,resource_type,limit from dba_profiles where profile=‘DEFAULT’;

 参数详解:
 FAILED_LOGIN_ATTEMPTS 连续10次登陆不成功就锁定账号
 PASSWORD_LOCK_TIME 单位为天,一旦登陆次数超过指定的值以后,账号被锁定的时间,默认是unlimited,表示一直锁定下去。
 PASSWORD_LIFE_TIME 单位为天,密码在多少天以后失效,失效后必须更改密码
 PASSWORD_GRACE_TIME 单位为天,密码失效后,会缓冲一定的时间,这段时间,每次使用老密码登陆,都会提示更改密码,超过这段时间以后,如果还是没有更改密码,账号就被锁定
 PASSWORD_REUSE_TIME 单位为天,在指定的天数以内,设定的密码不能重复
 PASSWORD_REUSE_MAX 单位为次数,在指定的次数范围内,密码不能重复
 上面的两个参数是互斥的,同时只能指定一个。
SESSIONS_PER_USER 同一个用户同时最多能够产生多少个session
 CPU_PER_SESSION 同一个用户一次最多能够持续占用CPU的多少时间,以百分之一秒为单位,例如2000,就说明session一次能够持续使用20秒的CPU
 CPU_PER_CALL 一次调用最多能够持续占用CPU的时间,一个SQL分为解析调用、执行调用等,以百分之一秒为单位
 LOGICAL_READS_PER_SESSION 每个session能够进行的逻辑读的最大个数。
 LOGICAL_READS_PER_CALL 一次调用能够进行的逻辑读的最大个数
 IDLE_TIME 一次会话能够idle的时间,超过这个时间以后,中断会话,idle指的是既没有CPU、也没有IO等待
 CONNECT_TIME SESSION 连接数据库超过指定的时间,中断这个SESSION
 COMPOSITE_LIMIT 权重
 PRIVATE_SGA 每个SESSION能够使用的SGA的大小
profile创建和参数修改
例给用户appsquery 创建profile
CREATE PROFILE ZM_PROFILE LIMIT
SESSIONS_PER_USER UNLIMITED
CPU_PER_SESSION UNLIMITED
CPU_PER_CALL 6000
CONNECT_TIME 60
LOGICAL_READS_PER_SESSION DEFAULT
LOGICAL_READS_PER_CALL 6000
COMPOSITE_LIMIT 6000000
PRIVATE_SGA 66K   
FAILED_LOGIN_ATTEMPTS 6
PASSWORD_LIFE_TIME 60
PASSWORD_REUSE_TIME 60
PASSWORD_REUSE_MAX 5   
PASSWORD_LOCK_TIME 1/24
PASSWORD_GRACE_TIME 10;
 
SQL> @?/rdbms/admin/utlpwdmg.sql
 函数已创建。
 配置文件已更改
 函数已创建。
– 修改密码策略 此处修改的环境可以改为自己创建的环境PROFILE_DEMO
SQL> alter profile ZM_PROFILE limit password_verify_function verify_function_11G;
 
配置文件已更改
– 修改密码策略为null则取消密码复杂度策略
SQL> alter profile ZM_PROFILE limit password_verify_function null;
 
– 查看修改后的环境 PASSWORD_VERIFY_FUNCTION 的LIMIT为VERIFY_FUNCTION_11G说明修改成功
SQL> select * from dba_profiles where profile='ZM_PROFILE';
SQL> alter user appsquery profile ZM_PROFILE;
 
–删除一个新的尚未分配给用户的PROFILE
SQL>DROP PROFILE appsprofile;
 
–删除已创建的profile,如果已经指定了用户则要加上cascade关键字
DROP PROFILE appsprofile cascade;
 
–设置密码可失败次数
alter profile default limit PASSWORD_LIFE_TIME unlimited;
                


















