Oracle中的profile

  1、目的:

  Oracle系统中的profile可以用以对用户所能施用的数据库资源进展限制,运用Create Profile下令创办一个Profile,用它来兑现对数据库资源的限制运用,如果把该profile分配给用户,则该用户所能施用的数据库资源都在该profile的限制以内。

  2、条件:

  创设profile务必要有CREATE PROFILE的系统权限。

  为用户指定资源限制,务必:

  一.动态地施用alter system或施用初始化参数resource_limit使资源限制奏效。该改变对密码资源无效,密码资源老是可用。

  SQL> show parameter resource_limit

  NAME TYPE VALUE

  ———————————— ———– ——————————

  resource_limit boolean FALSE

  SQL> alter system set resource_limit=true;

  系统已更动。

  SQL> show parameter resource_limit;

  NAME TYPE VALUE

  ———————————— ———– ——————————

  resource_limit boolean TRUE

  SQL>

  二.应用create profile创办一个定义对数据库资源开展限制的profile。

  三.施用create user 或alter user下令把profile分配给用户。

  3、语法:

  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 }

  }

< password_parameters >

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

  }

  4、语法解释:

  profile:配置文件的姓名。Oracle数据库以以次形式强逼资源限制:

  一.如其用户超过了connect_time或idle_time的对话资源限制,数据库就回滚现阶段事宜,并完事对话。用户再度执行命令,数据库则回来一个差错,

  二.如若用户意欲施行超过其余的对话资源限制的操作,数据库抛却操作,来滚目前事宜并立马回来错处。用户以后可以交付或回滚目前事宜,务必完事对话。

  揭示:可以将一条分为多个段,如一钟头(1/24天)来限制时间,可认为用户指定资源限制,但是数据库唯有在参数收效后才会实施限制。

  Unlimited:分配该profile的用户对资源施用无限制,应运用密码参数时,unlimited意味没对参数加限制。

  Default:指定为default象征忽略对profile中的一些资源限制,Default profile初步定义对资源不限制,可以经过alter profile下令来改变。

  Resource_parameter一部分

  Session_per_user:指定限制用户的并发对话的数额。

  Cpu_per_session:指定对话的CPU时间限制,组织为百分之1秒。

  Cpu_per_call:指定一次调用(解析、施行和提取)的CPU时间限制,机关为百分之1秒。

  Connect_time:指定对话的总的连接时间,以分钟为机构。

  Idle_time:指定对话容许延续不活动的总的时间,以分钟为机关,超过该时间,对话将断开。但是长时间运作查询和其余操作的不受此限制。

  Logical_reads_per_session:指定一个对话容许读的数据块的数额,包括从内存储器和磁盘读的全部数据块。

  Logical_read_per_call:指定一次施行SQL(解析、施行和提取)调用所容许读的数据块的最大数目。

  Private_sga:指定一个对话可以在共享池(SGA)中所容许分配的最大空间,以字节为组织。(该限制只在运用共享服务器构造时才有效,对话在SGA中的私得空间包括私有的SQL和PL/SQL,但不包括共享的SQL和PL/SQL)。

  Composite_limit:指定一个对话的总的资源耗费,以service units部门示意。Oracle数据库以有益的模式计算cpu_per_session,connect_time,logical_reads_per_session和private-sga总的service units

  Password_parameter一部分:

  Failed_login_attempts:指定在帐户被锁定先头所容许尝试登陆的的最大次数。

  Password_life_time:指定同一密码所容许运用的天数。如其与此同时指定了password_grace_time参数,如果在grace period内没改变密码,则密码会失灵,连接数据库被回绝。如其没设立password_grace_time参数,默认值unlimited将挑动一个数据库警告,但是容许用户持续联接。

  Password_reuse_time和password_reuse_max:这两个参数务必相互联系关系设立,password_reuse_time指定了密码不能重用前的天数,而password_reuse_max则指定了目前密码被重用预先密码改变的次数。两个参数都必须被设立为整数。

  一.如其为这两个参数指定了整数,则用户不能重用密码直到密码被改变了password_reuse_max指定的次数之后在password_reuse_time指定的时间内。

  如:password_reuse_time=30,password_reuse_max=十,用户可以在30天之后重用该密码,要求密码务必被改变超过10次。

  二.如若指定了内中的一个为整数,而另一个为unlimited,则用户永远不能重用一个密码。

  三.如其指定了此中的一个为default,Oracle数据库施用定义在profile中的默认值,默许情况下,全部的参数在profile中都被设立为unlimited,如其没改变profile默认值,数据库对该值老是默许为unlimited。

  四.如若两个参数都设立为unlimited,则数据库忽略他们。

  Password_lock_time:指定登陆尝试失败次数抵达后帐户的缩定时间,以天为机关。

  Password_grace_time:指定宽限天数,数据库下发警告到登陆失灵前的天数。如若数据库密码在这当中没被批改,则逾期会失灵。

  Password_verify_function:该字段容许将复杂的PL/SQL密码证验脚本做为参数传接到create profile话语。Oracle数据库提供了一个默许的脚本,但是自各儿可以创造自个儿的证验守则或应用第三方软件印证。 对Function姓名,指定的是密码证验守则的姓名,指定为Null则寓意不施用密码应验效能。如若为密码参数指定表达式,则该表达式可以是随便格式,去除数据库标量子查询。

5、举例来说:

  一.创设一个profile:

  create profile new_profile

  limit password_reuse_max 十

  password_reuse_time 30;

  二.设立profile资源限制:

  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;

  总的resource cost不超过五百万service units。计算总的resource cost的公式由alter resource cost话语来指定。

  三.设立密码限制profile:

  create profile app_users二 limit

  failed_login_attempts 五

  password_life_time 60

  password_reuse_time 60

  password_reuse_max 五

  password_verify_function verify_function

  password_lock_time 1/24

  password_grace_time 十;

  四.将配置文件分配给用户:

  SQL> alter user dinya profile app_user;

  用户已更动。

  SQL>

  SQL> alter user dinya profile default;

  用户已更动。

本文来源:我的异常网 Oracle Exception

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值