• 管理用户和PROFILE ——管理PROFILE——使用PROFILE管理资源




    在大而复杂的多用户数据库环境中,因为用户众多,所以系统资源可能会成为影响性能的主要瓶颈。为了有效利用系统资源,应该根据用户所承担的任务为其分配合理的资源。profile不仅用于管理口令,还可以用于管理用户资源。注意:如果使用profile管理资源,那么必须激活资源限制。

    conn sys/sys as sysdba
    alter system set resource_limit=true;

    1.限制会话资源

    限制会话资源是指在连接期间所占用的总计资源。当超过会话资源限制时,oracle会隐含断开用户会话。当连接到数据库时,oracle会为用户进程分配服务器进程;当用户发出sql语句时,服务器进程会执行该sql操作。为了有效利用cpu 和内存资源。应该对用户资源进行适当限制。为了限制会话资源,可以使用以下选项:

    • cpu_per_session:用于指定每个会话可占用的最大cpu时间(单位1/100秒)。
    • logical_reads_per_session:用于指定会话的最大逻辑读取次数。
    • private_sga:用于指定会话在共享池中可分配的最大总计私有空间。注意:该选项只适用于共享服务器模式。

    composite_limit:用于指定会话的总计资源消耗,oracle会根据cpu_per_session,connect_time,logical_reads_per_session以及private_sge的求权结果取得总计服务单元。

    例子:限制usertemp01会话占用cpu时间不超过50秒,逻辑读取次数不超过100次:

    conn sys/sys as sysdba
    create profile session_limit limit
    cup_per_session 5000 logical_reads_per_session 100;
    alter user usertemp01 profile session_limit;

    2.限制调用资源

    限制调用资源是指限制单条sql语句可占用的最大资源。当执行sql语句时,如果解析,执行或者提取阶段超出调用级资源限制,那么oracle会自动终止语句处理,并回退语句操作,oracle提供了一下两个限制调用资源的选项:

    • cpu_per_call:用于限制每次调用可占用的最大cpu时间。
    • logical_reads_per_call:用于限制每次调用的做的i/o次数。

    例子:限制usertemp01的每次调用的最大cpu时间为2s,每次调用的最大逻辑次数10.

    create profile call_limit limit
    cup_per_call 200 logical_reads_call 10;
    alter user usertemp01 profile call_limit;

    3.限制其他资源

    当使用profile管理资源时,除了可以限制会话级和调用级的资源以外,还可以设置其他资源限制。这些资源限制选项如下所示:

    • session_session_user:用于指定每个用户的最大并发会话个数。
    • connect_time:用于指定会话的最大连接时间(单位:分钟)。
    • idle_time:用于指定会话的最大空闲时间(单位:分钟)。

    例子:限制usertemp01的最大并发会话个数3,会话的最大连接时间不超过30分钟,会话最大空闲时间不超过5分钟:

    create profile other limit
    session_per_user 3 connect_time 30 idle_time 5;
    alter user usertemp01 profile other;

  • 相关阅读:
    控制C++的类只能在堆分配或只能在栈分配
    static 相关随笔
    虚拟继承
    虚函数和纯虚函数有以下所示方面的区别(转)
    构造函数 析构函数
    标准C++中有没有接口和纯抽象类的概念?(转)
    抽象类和接口(转)
    如何快速正确的安装 Ruby, Rails 运行环境
    NSRunLoop
    UIImagePickerController之死因 .
  • 原文地址:https://www.cnblogs.com/zhaojiedi1992/p/oracle11g_sql_0063.html
Copyright © 2020-2023  润新知