Oracle修改用户Profile SESSIONS_PER_USER 限制

一、profile目的:

  oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用create profile命令创建一个profile,用它来实现对数据库资源的限制使用,如果把该profile分配给用户,则该用户所能使用的数据库资源都在该profile的限制之内。具体管理内容有:cpu的时间、i/o的使用、idle time(空闲时间)、connect time(连接时间)、并发会话数量、口令机制等。

 

二、条件:

  创建profile必须要有create profile的系统权限。为用户指定资源限制,必须:

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

    例: 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用户)

三、查询profile

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

四、创建 profile 的语法如下:

  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 }
  }

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐