加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ORACLE 配置文件

发布时间:2020-12-12 15:30:23 所属栏目:百科 来源:网络整理
导读:配置文件的功能:管理密码、限制会话可占用的资源。Oracle建议使用资源管理器来限制资源管理。 1.语法: 创建配置文件: CREATE PROFILE profile LIMIT { resource_parameters | password_parameters }...; 修改配置文件: ALTER PROFILE profile LIMIT { re

配置文件的功能:管理密码、限制会话可占用的资源。Oracle建议使用资源管理器来限制资源管理。

1.语法:

创建配置文件:

CREATE PROFILE profile LIMIT { resource_parameters | password_parameters }...;

修改配置文件:

ALTER PROFILE profile LIMIT { resource_parameters | password_parameters }...;

删除配置文件:

drop profile profile_name [cascade];


应用配置文件:

alter user user_name profile profile_name;



2.相关参数

1)管理口令:

failed_login_attempts:锁定用户前,口令可以连续输入错误数。

password_lock_time:密码输错错误导致账户锁定的天数;

password_life_time:口令过期前的天数;

password_grace_time:口令过期后仍然可以登陆的天数;

password_reuse_time:相同口令可以再次使用的时间间隔,以天为单位;

password_reuse_max:在达到PASSWORD_REUSE_TIME指定时间后,要再次使用同一口令前必须改变的次数。

password_verify_function:密码复杂性。

2)资源限制:

SESSIONS_PER_USER:每个用户可以登陆的会话数;

CPU_PER_SESSION:指定会话的CPU时间限制,以百分之一秒为单位。

CPU_PER_CALL CPU时间限制,以百分之一秒为单位。

CONNECT_TIME 连接时间,以分钟为单位

IDLE_TIME 指定会话期间持续不活动时间的允许期间,以分钟表示。 长时间运行的查询和其他操作不受此限制。

LOGICAL_READS_PER_SESSION 指定在会话中读取的数据块的允许数量,包括从内存和磁盘读取的数据块。

LOGICAL_READS_PER_CALL 指定为调用处理SQL语句(解析,执行或提取)而读取的数据块的允许数量。

PRIVATE_SGA 指定会话可以在系统全局区域(SGA)的共享池中分配的私有空间量。

只有设置了实例参数,才会应用资源限制:

alter system set resource_limit=true;


3.例子

3.1 创建新的配置文件

创建新的配置文件,供测试使用。

CREATE PROFILE app_user LIMIT

SESSIONS_PER_USER 3

CONNECT_TIME 2

PASSWORD_REUSE_MAX 2;

3.2 查看配置文件的类型

SQL> select distinct profile from dba_profiles;


PROFILE

------------------------------

MONITORING_PROFILE

APP_USER

DEFAULT


3.3 查看配置文件的内容

SQL> select * from dba_profiles where profile='APP_USER';#未分配的值,LIMIT字段为DEFAULT。

PROFILERESOURCE_NAMERESOURCE_TYPELIMIT
-------------------------------------------------------------------------------------------------------------------
APP_USERCOMPOSITE_LIMITKERNELDEFAULT
APP_USERSESSIONS_PER_USERKERNEL3
APP_USERCPU_PER_SESSIONKERNELDEFAULT
APP_USERCPU_PER_CALLKERNELDEFAULT
APP_USERLOGICAL_READS_PER_SESSIONKERNELDEFAULT
APP_USERLOGICAL_READS_PER_CALLKERNELDEFAULT
APP_USERIDLE_TIMEKERNELDEFAULT
APP_USERCONNECT_TIMEKERNEL2
APP_USERPRIVATE_SGAKERNELDEFAULT
APP_USERFAILED_LOGIN_ATTEMPTSPASSWORDDEFAULT
APP_USERPASSWORD_LIFE_TIMEPASSWORDDEFAULT
APP_USERPASSWORD_REUSE_TIMEPASSWORDDEFAULT
APP_USERPASSWORD_REUSE_MAXPASSWORD2
APP_USERPASSWORD_VERIFY_FUNCTIONPASSWORDDEFAULT
APP_USERPASSWORD_LOCK_TIMEPASSWORDDEFAULT
APP_USERPASSWORD_GRACE_TIMEPASSWORDDEFAULT

3.4 修改SCOTT用户的默认配置文件

SQL> alter user scott profile app_user;

User altered


#启用资源限制

alter system set resource_limit=true;

#登陆scott,连接会话超过3次会报错

SQL> conn scott/tiger

ERROR:

ORA-02391: exceeded simultaneous SESSIONS_PER_USER limit


#连接2分钟之后,执行查询操作报错;如果无操作,scott用户仍不能登陆。

SQL> select count(1) from tabs;

select count(1) from tabs

*

ERROR at line 1:

ORA-00604: error occurred at recursive SQL level 1

ORA-02399: exceeded maximum connect time,you are being logged off


#修改scott的密码,原密码为tiger

SQL> alter user scott identified by scott;

User altered

SQL> alter user scott identified by scott;

alter user scott identified by scott

ORA-28007: 无法重新使用口令

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读