Oracle修改用户Profile SESSIONS_PER_USER 限制

1、Profile目的:数据库

  Oracle系统中的profile能够用来对用户所能使用的数据库资源进行限制,使用Create Profile命令建立一个Profile,用它来实现对数据库资源的限制使用,若是把该profile分配给用户,则该用户所能使用的数据库资源都在该profile的限制以内。具体管理内容有:CPU的时间、I/O的使用、IDLE TIME(空闲时间)、CONNECT TIME(链接时间)、并发会话数量、口令机制等。session

 

2、条件:并发


  建立profile必需要有CREATE PROFILE的系统权限。为用户指定资源限制,必须:资源

  1.动态地使用alter system或使用初始化参数resource_limit使资源限制生效。该改变对密码资源无效,密码资源老是可用。 
    SQL> show parameter resource_limit
    SQL> alter system set resource_limit=true; 
  2.使用create profile建立一个定义对数据库资源进行限制的profile。it

    例: create profile one_session limit sessions_per_user 1;(建立一个名为one_session的Profile,设置限制数量为1)
  3.使用create user 或alter user命令把profile分配给用户。
    例: alter user test profile one_session;(分配给test用户)io

3、查询Profilefunction

  可经过dba_profiles视图查看一下系统中默认都有哪些PROFILEtest

4、建立 profile 的语法以下:file

  CREATE PROFILE profile
  LIMIT { resource_parameters 对资源的限制
    | password_parameters   对密码的限制
    }... ;权限

  <resource_parameters> 
  {{ SESSIONS_PER_USER   每一个用户名并行会话数
   | CPU_PER_SESSION    每会话可用的CPU时间,单位0.01秒
   | CPU_PER_CALL     一次SQL调用(解析、执行和获取)容许的CPU时间
   | CONNECT_TIME     会话链接时间(分钟)
   | IDLE_TIME       会话空闲时间(分钟),超出将断开
   | LOGICAL_READS_PER_SESSION
   | LOGICAL_READS_PER_CALL
   | COMPOSITE_LIMIT   “组合打法”
   }
   { integer | UNLIMITED | DEFAULT }
   | PRIVATE_SGA
   { integer [ K | M ] | UNLIMITED | DEFAULT }
  }

  < password_parameters >  {{ FAILED_LOGIN_ATTEMPTS 被锁定前的试错次数   | PASSWORD_LIFE_TIME   密码使用天数,默认180天   | PASSWORD_REUSE_TIME   密码可重用的间隔时间(结合PASSWORD_REUSE_MAX)   | PASSWORD_REUSE_MAX   密码最大改变次数(结合PASSWORD_REUSE_TIME)   | PASSWORD_LOCK_TIME   超过试错次数后,被锁定的天数,默认1天   | PASSWORD_GRACE_TIME   密码过时后还可以使用原密码的天数   }   { expr | UNLIMITED | DEFAULT }   | PASSWORD_VERIFY_FUNCTION     { function | NULL | DEFAULT }  }

相关文章
相关标签/搜索