1 知识储备
1) 配置文件(PROFILE)是一个只允许具有CREATE PROFILE 的权限的用户设置口令管理和资源限制的对象。
2) 创建数据库时会创建一个默认(DEFAULT)配置文件,该文件对所有资源不做任何限制。
3) 一个用户只能拥有1个配置文件
4) 配置文件分两部分,资源参数(resource parameters) 和密码参数(password parameters),只有在RESOURCE_LIMIT参数设置为TRUE时
SQL>alter system set RESOURCE_LIMIT=true scope=both;//该值默认为FALSE
,资源参数的设置才有效,而密码参数设置始终有效,不受RESOURCE_LIMIT参数的限制。
2 限制内容
2.1 资源参数
受RESOURCE_LIMIT参数限制,只有置为TRUE才起作用
2.2 口令参数
不受RESOURCE_LIMIT参数限制,任何时候都起作用。
3 操作
3.1 查看
SQL>select * from dba_profile where profile=’profile_name’;
3.2 创建
可以为每个参数指定UNLIMIYED或者DEFAULT值,前者设定该参数无任何限制,后者则指定该参数值参考DEFAULT PROFILE的设置值。
SQL>CREATE PROFILE profile_name LIMIT
SESSIONS_PER_USER value
CPU_PER_SESSION value
CPU_PER_CALL value
CONNECT_TIME value
IDLE_TIME value
LOGICAL_READS_PER_SESSION value
LOGICAL_READS_PER_CALL value
COMPOSITE_LIMIT value
PRIVATE_SGA value[ K | M ]
FAILED_LOGIN_ATTEMPTS value
PASSWORD_LIFE_TIME value
PASSWORD_REUSE_TIME value
PASSWORD_REUSE_MAX value
PASSWORD_LOCK_TIME value
PASSWORD_GRACE_TIME value
PASSWORD_VERIFY_FUNCTION function_name ;
3.3 更改
更改参数时, 对于当前连接修改不生效。只在下次连接时才生效
SQL>ALTER PROFILE profile_name LIMIT reference_name new_value;
3.4 删除
如果没有使用CASCADE参数,则要求被删除的PROFILE没有被指定给任何用户,如果使用了CASCADE参数,则被删除的PROFILE可以已经被指定给其他用户,被删除后,将使用系统DEFAULT PROFILE代替,提供给该用户。
SQL>DROP PROFILE profile_name [CASCADE]
3.5 指派用户
任何用户都只具有一个有效的配置文件。
SQL>ALTER USER user_name PROFILE profile_name;
也可以在创建用户时指定。
SQL>CREATE USER user_name IDENTITIED BY password PROFILE profile_name;