PROFILE的管理(资源文件)

当需要设置资源限制时,必须设置数据库系统启动参数RESOURCE_LIMIT,此参数默认值为FALSE

可以使用如下命令来启动当前资源限制:

alter system set RESOURCE_LIMIT=true;

当需要以后启动时也启动限制,必须在init.ora中设置

RESOURCE_LIMIT=true

建立语法:

CREATE PROFILE profile LIMIT

{ resource_parameters | password_parameters }

[ resource_parameters | password_parameters ]...;

{ { SESSIONS_PER_USER | CPU_PER_SESSION | CPU_PER_CALL | CONNECT_TIME | IDLE_TIME

| LOGICAL_READS_PER_SESSION | LOGICAL_READS_PER_CALL | COMPOSITE_LIMIT }

{ integer | UNLIMITED | DEFAULT }

| PRIVATE_SGA { integer [ K | M ] | UNLIMITED | DEFAULT }

}

{ { FAILED_LOGIN_ATTEMPTS | PASSWORD_LIFE_TIME | PASSWORD_REUSE_TIME

| PASSWORD_REUSE_MAX | PASSWORD_LOCK_TIME | PASSWORD_GRACE_TIME }

{ expr | UNLIMITED | DEFAULT }

| PASSWORD_VERIFY_FUNCTION { function | NULL | DEFAULT }

}

CREATE PROFILE new_profile

LIMIT PASSWORD_REUSE_MAX DEFAULT

PASSWORD_REUSE_TIME UNLIMITED;

CREATE PROFILE app_user LIMIT

SESSIONS_PER_USER UNLIMITED

CPU_PER_SESSION UNLIMITED

CPU_PER_CALL 3000

CONNECT_TIME 45

LOGICAL_READS_PER_SESSION DEFAULT

LOGICAL_READS_PER_CALL 1000

PRIVATE_SGA 15K

COMPOSITE_LIMIT 5000000;

CREATE PROFILE app_user2 LIMIT

FAILED_LOGIN_ATTEMPTS 5

PASSWORD_LIFE_TIME 60

PASSWORD_REUSE_TIME 60

PASSWORD_REUSE_MAX UNLIMITED

PASSWORD_VERIFY_FUNCTION verify_function

PASSWORD_LOCK_TIME 1/24

PASSWORD_GRACE_TIME 10;

一、PROFILE的管理内容:

1、CPU的时间

2、I/O的使用

3、IDLE TIME(空闲时间)

4、CONNECT TIME(连接时间)

5、并发会话数量

6、口令机制:

二、DEFAULT PROFILE:

1、所有的用户创建时都会被指定这个PROFILE

2、DEFAULT PROFILE的内容为空,无限制

三、PROFILE的划分:

If a user attempts to perform an operation that exceeds the limit for other session resources,

Oracle aborts the operation, rolls back the current statement, and immediately returns an error.

The user can then commit or roll back the current transaction, and must then end the session.

that exceeds the limit(超过限制) for other session resources(范围之外的其他资源)

被理解为:连接控制资源范围之外的其他资源。

当一个用户试图操作超过限制的资源时,Oracle终止当前操作,取消正在执行的处理,并且返回一个错误,

用户可以提交或回滚当前事物,之后必须断开会话。

如果一个用户试图操作一个超出他限制的资源,Oracle将放弃这个操作,取消正在执行的处理,并立即返

回一个错误。这个用户然后提交或回滚当前的处理,之后必须终止这个会话。

如果是调用限制时,Oracle终止当前操作,取消正在执行的处理,并且返回一个错误,回滚整个事务。

1、CALL级LIMITE:

对象是语句:

当该语句资源使用溢出时:

A、该语句终止

B、事物回退

C、SESSION连接保持

2、SESSION级LIMITE:

对象是:整个会话过程

溢出时:连接终止

四、如何管理一个PROFILE

1、CREATE PROFILE

2、分配给一个用户

3、象开关一样打开限制。

五、如何创建一个PROFILE:

1、命令:

CREATE PROFILE 名称

LIMIT

SESSION_PER_USER 2

CPU_PER_SESSION 1000

IDLE_TIME 60 用户在数据库终止前,可以让连接空闲多长时间(分钟)

CONNECT_TIME 480

六、限制参数:

0、UNLIMITED 取消资源限制

DEFAULT 缺剩资源限制,即使用default资源限制

1、CONNECT_TIME :一个连接会话的最长连接时间(分钟)

当用户会话时间超过CONNECT_TIME指定的时间,Oracle将回滚当前事务,并且结束他的会话

IDLE_TIME :一个连接会话的最长连接时间

当用户空闲时间超过IDLE_TIME指定的时间,Oracle将回滚当前事务,并且结束他的会话

2、SESSIONS_PER_USER:一个用户允许同时(并发)会话的总数,超过后系统禁止该用户的后续会话,并返回错误:

ORA-02391 exceeded simultaneous SESSIONS_PER_USER limit

3、SESSION级LIMITE:

CPU_PER_SESSION:定义了一个SESSION占用的CPU的时间(1/100 秒),当达到这个限制用户不能在此会话中执行任何操作,

此时必须先断开连接,再连接才行。

CPU_PER_CALL :限制每次调用SQL语句期间(parse、execute、fetch)可用的CPU时间总量,单位是百分之一秒。达到限制时

语句以报错结束。不同于CPU_PER_SESSION的是,没达到CPU_PER_SESSION限制,还可以进行新的查询。

4、LOGICAL_READS_PER_SESSION: 一个会话允许读写的逻辑块的数量限制

5、CALL级LIMITE

CPU_PER_CALL:每个语句占用的CPU时间

LOGICAL_READS_PER_CALL:一次调用的SQL期间,允许读数据库块数限制

6、PRIVATE_SGA:一个会话允许分配的最大SGA大小,使用K/M定义

COMPOSITE_LIMIT:一个会话的资源成本限制,CPU_PER_SESSION, CONNECT_TIME, LOGICAL_READS_PER_SESSION, and PRIVATE_SGA

七、分配给一个用户:

CREATE USER 名称。。。。。。

PROFILE 名称

ALTER USER 名称 PROFILE 名称

八、打开资源限制:

1、RESOURCE_LIMT:资源文件中含有

2、ALTER SYSTEM SET RESOURCE_LIMIT=TRUE;

3、默认不打开

九、修改PROFIE的内容:

1、ALTER PROFILE 名称参数 新值

2、对于当前连接修改不生效。

DROP一个PROFILE

1、DROP PROFILE 名称

删除一个新的尚未分配给用户的PROFILE,

2、DROP PROFILE 名称 CASCADE

3、注意事项

A、一旦PROFILE被删除,用户被自动加载DEFAULT PROFILE

B、对于当前连接无影响

C、DEFAULT PROFILE不可以被删除

十、信息获取:

1、DBA_USERS:

用户名,PROFILE

2、DBA_PROFILES:

PROFILE及各种限制参数的值

每个用户的限制:PROFILE(关键字段)

十一、PROFILE的口令机制限制

1、限制内容

A、限制连续多少次登录失败,用户被加锁

B、限制口令的生命周期

C、限制口令的使用间隔

2、限制生效的前提:

A、RESOURCE_LIMIT:=TRUE

B、ORACLERDBMSADMINUTLPWDMG.SQL

3、如何创建口令机制:

CREATE PROFILE 名称

SESSIONS_PER_USER

.....

password_life_time 30

failed_log_attempts 3

password_reuse_time 3

4、参数的含义:

A、FAILED_LOGIN_ATTEMPTS :当连续登陆失败次数达到该参数指定值时,用户被加锁;

经过DBA解锁(或PASSWORD_LOCK_TIME天)后可继续使用

B、PASSWORD_LIFE_TIME :口令的有效期(天),默认为UNLIMITED

C、PASSWORD_LOCK_TIME :帐户因FAILED_LOGIN_ATTEMPTS锁定时,加锁天数

D、PASSWORD_GRACE_TIME :口令修改的宽限期(天)

E、PASSWORD_REUSE_TIME :口令被修改后原有口令隔多少天被重新使用,默认为UNLIMITED

F、PASSWORD_REUSE_MAX :口令被修改后原有口令被修改多少次才允许被重新使用。

G、PASSWORD_VERIFY_FUNCTION:口令效验函数

十二、错误信息及解决方法

ORA-02390 exceeded COMPOSITE_LIMIT, you are being logged off

Cause: The COMPOSITE_LIMIT for the profile is exceeded. That is, the weighted sum of the connection time, logical reads per session, CPU usage per session, and private SGA space used during the session exceeded the limit set by the COMPOSITE_LIMIT clause set in the user profile.

Action: If this happens often, ask the database administrator to raise the COMPOSITE_LIMIT of the user profile, or determine which resource is used the most and raise the limit on that resource.

ORA-02391 exceeded simultaneous SESSIONS_PER_USER limit

Cause: An attempt was made to exceed the maximum number of concurrent sessions allowed by the SESSIONS_PER_USER clause of the user profile.

Action: End one or more concurrent sessions or ask the database administrator to increase the SESSIONS_PER_USER limit of the user profile. For more information about SESSIONS_PER_USER and the database administrator's specific tasks of adjusting concurrent sessions, see the Oracle9i SQL Reference and the Oracle9i Database Administrator's Guide.

ORA-02392 exceeded session limit on CPU usage, you are being logged off

Cause: An attempt was made to exceed the maximum CPU usage allowed by the CPU_PER_SESSION clause of the user profile.

Action: If this happens often, ask the database administrator to increase the CPU_PER_SESSION limit of the user profile.

ORA-02393 exceeded call limit on CPU usage

Cause: An attempt was made to exceed the maximum CPU time for a call, a parse, execute, or fetch, allowed by the CPU_PER_CALL clause of the user profile.

Action: If this happens often, ask the database administrator to increase the CPU_PER_CALL limit of the user profile.

ORA-02394 exceeded session limit on IO usage, you are being logged off

Cause: An attempt was made to exceed the maximum I/O allowed by the LOGICAL_READS_PER_SESSION clause of the user profile.

Action: If this happens often, ask the database administrator to increase the LOGICAL_READS_PER_SESSION limit of the user profile.

ORA-02395 exceeded call limit on IO usage

Cause: An attempt was made to exceed the maximum I/O for a call, a parse, execute, or fetch, allowed by the LOGICAL_READS_PER_CALL clause of the user profile.

Action: If this happens often, ask the database administrator to increase the LOGICAL_READS_PER_CALL limit of the user profile.

ORA-02396 exceeded maximum idle time, please connect again

Cause: A user has exceeded the maximum time allowed to remain idle.

Action: The user must reconnect to the database.

ORA-02397 exceeded PRIVATE_SGA limit, you are being logged off

Cause: This error occurs only when using a multi-threaded server.

Action: Contact the database administrator to expand the PRIVATE_SGA limit.[@more@]

oracle io profile,ORACLE 中 PROFILE的管理相关推荐

  1. ORACLE 12C CDB中PDB参数管理机制

    转自:http://www.xifenfei.com/2013/06/oracle-12c-cdb%E4%B8%ADpdb%E5%8F%82%E6%95%B0%E7%AE%A1%E7%90%86%E6 ...

  2. 创建emp表 oracle,Oracle中创建和管理表详解

    Oracle中创建和管理表详解 更新时间:2013年08月01日 15:44:16   作者: 以下是对Oracle中的创建和管理表进行了详细的分析介绍,需要的朋友可以过来参考下 SQL> /* ...

  3. oracle 查询数据库io,理解Oracle中的并行查询IO

    Oracle缓存区如何通过频繁地缓存在共享内存中访问数据来帮助降低磁盘IO瓶颈.Oracle有一种轮换IO机制,叫做"直接路径IO",如果它判断到绕过缓存区直接执行IO会更快速的话 ...

  4. oracle事务管理器,全能数据库盘问分析器中的事务管理在oracle中的应用.doc

    全能数据库盘问分析器中的事务管理在oracle中的应用.doc 还剩 6页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 76<DB 查询分析器 ...

  5. 什么影响oracle io,Oracle IO问题解析

    3.2 数据文件相关的IO事件 数据库系统中的大多数的IO请求都是针对数据文件的.因此大多数情况下,与数据文件相关的IO事件是引起系统IO性能的主要原因.这些事件也是我们文章需要重点介绍的事件.下面分 ...

  6. linux中 bash_profile,Linux中profile、bashrc、bash_profile区别

    ~/.bash_profile.~/.bashrc.和~/.bash_logout 1.上面这三个文件是bash shell的用户环境配置文件,位于用户的主目录下.其中.bash_profile是最重 ...

  7. oracle集群+默认什么组,Oracle RAC 建设过程中必须应知、应做(上)

    原标题:Oracle RAC 建设过程中必须应知.应做(上) 作者:赵海,某城商行系统架构师,专注并擅长银行数据中心解决方案规划及设计.目前在社区会员关注TOP100排行榜中名列第三位,社区专业技能榜 ...

  8. oracle存储过程 论文,Oracle中基于Java的存储过程开发_计算机论文

    论文导读::存储过程是一种数据库对象,将执行计划存储在数据库的服务器中,它的执行速度比独立执行同样的程序要快.任何一个设计良好的数据库应用程序都应该用到存储过程.存储过程可以使得对数据库的管理.显示关 ...

  9. linux oracle io 查看,Linux上Oracle是否使用异步io的诊断

    客户的数据库IO负载较重,检查后发现并未设置异步IO. 整个数据库的负载都集中在IO相关的等待上: Top 5 Timed Foreground Events Event Waits Time(s) ...

  10. ORACLE DBA学习笔记--表空间的管理(tablespace)

    表空间是个逻辑概念. 表空间是ORACLE的最大逻辑结构.表空间是组织数据和分配空间的逻辑结构. 特性: 一个表空间有多个数据文件组成,但一个数据文件只属于一个表空间 一个数据库可以有多个表空间,可以 ...

最新文章

  1. WinCE5.0移动平台开发笔记(c#中使用多线程访问winform中控件的若干问题(zt))
  2. profiling mysql_MySQL如何利用profiling分析SQL查询语句
  3. 【深度学习】带有 CRF-RNN 层的 U-Net模型
  4. myeclipse 清理项目缓存的几大步骤
  5. Mac 删除应用卸载后无法正常移除的图标
  6. Jelastic Java云端平台
  7. BottomupSort算法 c++代码实现
  8. spring读取多个配置properties报错“Could not resolve placeholder“的解决方案
  9. C#接口。 隐式实现与显式实现
  10. PAT (Basic Level) Practice1028 人口普查
  11. jsp页面ajax用法,在jsp中使用jquery的ajax
  12. R(Kmeans绘制地形图)
  13. Multisim卸载后重新安装不上解决方案
  14. Win11 无法使用IE11浏览器的解决办法
  15. ie select option css,ie浏览器不支持select option italic
  16. 测试前景分析-来自《Goolgle测试之道》
  17. 目标检测:速度和准确性比较(Fater R-CNN,R-FCN,SSD,FPN,RetinaNet和YOLOv3)
  18. 2021年淘宝双11跨店满减如何使用?
  19. 解救小哈——DFS算法举例
  20. 黑马淘淘商城第十二天 购物车实现、订单确认页面展示

热门文章

  1. CoRL 2020奖项公布,斯坦福获最佳论文奖,华为等摘得最佳系统论文奖
  2. 当支持向量机遇上神经网络......
  3. Python 函数合集:足足 68 个内置函数请收好
  4. 2020年最火本科生专业来了!180所高校新增人工智能专业
  5. 7000 字读懂互联网公司的架构演变历程
  6. 一起睡了四年的大学舍友
  7. 分布式事务篇——第一章:分布式事务前言
  8. 遍历百万级Redis的键值的续集
  9. Linux7 CENTOS7修改root密码
  10. 利用OpenCV+ConvNets检测几何图形