设为首页 收藏本站
查看: 1253|回复: 6

[经验分享] ORACLE PROFILE学习笔记

[复制链接]

尚未签到

发表于 2013-6-5 09:20:44 | 显示全部楼层 |阅读模式
一、条件
创建profile必须要有CREATE PROFILE的系统权限。
为用户指定资源限制,必须:
1.动态地使用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>
2.使用create profile创建一个定义对数据库资源进行限制的profile。
3.使用create user 或alter user命令把profile分配给用户。

二、语法

1、创建profile

CREATE PROFILE profile
   LIMIT { resource_parameters
         | password_parameters
         }
           [ resource_parameters
           | password_parameters
           ]... ;
<resource_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 }
}
2、修改profile
1

ALTER PROFILE profile LIMIT
  { resource_parameters | password_parameters }
    [ resource_parameters | password_parameters
    ]... ;
<resource_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
  { size_clause | 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 }
}
三、语法解释
      profile:配置文件的名称。Oracle数据库以以下方式强迫资源限制:
      1.如果用户超过了connect_time或idle_time的会话资源限制,数据库就回滚当前事务,并结束会话。用户再次执行命令,数据库则返回一个错误,
      2.如果用户试图执行超过其他的会话资源限制的操作,数据库放弃操作,回滚当前事务并立即返回错误。用户之后可以提交或回滚当前事务,必须结束会话。
      提示:可以将一条分成多个段,如1小时(1/24天)来限制时间,可以为用户指定资源限制,但是数据库只有在参数生效后才会执行限制。
      Unlimited:分配该profile的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。
      Default:指定为default意味着忽略对profile中的一些资源限制,Default profile初始定义对资源不限制,可以通过alter profile命令来改变。
Resource_parameter部分
      Session_per_user:          指定限制用户的并发会话的数目。
      Cpu_per_session:           指定会话的CPU时间限制,单位为百分之一秒。
      Cpu_per_call:              指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。
      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则指定了当前密码被重用之前密码改变的次数。两个参数都必须被设置为整数。
      1.如果为这两个参数指定了整数,则用户不能重用密码直到密码被改变了password_reuse_max指定的次数以后在password_reuse_time指定的时间内。
      如:password_reuse_time=30,password_reuse_max=10,用户可以在30天以后重用该密码,同时要求密码必须被改变超过10次。
      2.如果指定了其中的一个为整数,而另一个为unlimited,则用户永远不能重用一个密码。
      3.如果指定了其中的一个为default,Oracle数据库使用定义在profile中的默认值,默认情况下,所有的参数在profile中都被设置为unlimited,如果没有改变profile默认值,数据库对该值总是默认为unlimited。
      4.如果两个参数都设置为unlimited,则数据库忽略他们。

      Password_lock_time:       指定登陆尝试失败次数到达后帐户的锁定时间,以天为单位。
      Password_grace_time:      指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。
      Password_verify_function: 该字段允许将复杂的PL/SQL密码验证脚本做为参数传递到create profile语句。Oracle数据库提供了一个默认的脚本,但是自己可以创建自己的验证规则或使用第三方软件验证。 对Function名称,指定的是密码验证规则的名称,指定为Null则意味着不使用密码验证功能。如果为密码参数指定表达式,则该表达式可以是任意格式,除了数据库标量子查询。

四、举例:
例如1、创建profile并赋予用户
1.创建一个profile:

CREATE profile killidle limit
       Idle_time 10
       FAILED_LOGIN_ATTEMPTS 5
       PASSWORD_LOCK_TIME 5
2.查看新建的profile文件

SQL> select PROFILE,RESOURCE_NAME,RESOURCE_TYPE,LIMIT from DBA_PROFILES WHERE PROFILE='KILLIDLE';

PROFILE                        RESOURCE_NAME                    RESOURCE_TYPE LIMIT
------------------------------ -------------------------------- ------------- ----------------------------------------
KILLIDLE                       COMPOSITE_LIMIT                  KERNEL        DEFAULT
KILLIDLE                       SESSIONS_PER_USER                KERNEL        DEFAULT
KILLIDLE                       CPU_PER_SESSION                  KERNEL        DEFAULT
KILLIDLE                       CPU_PER_CALL                     KERNEL        DEFAULT
KILLIDLE                       LOGICAL_READS_PER_SESSION        KERNEL        DEFAULT
KILLIDLE                       LOGICAL_READS_PER_CALL           KERNEL        DEFAULT
KILLIDLE                       IDLE_TIME                        KERNEL        10
KILLIDLE                       CONNECT_TIME                     KERNEL        DEFAULT
KILLIDLE                       PRIVATE_SGA                      KERNEL        DEFAULT
KILLIDLE                       FAILED_LOGIN_ATTEMPTS            PASSWORD      5
KILLIDLE                       PASSWORD_LIFE_TIME               PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_REUSE_TIME              PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_REUSE_MAX               PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_VERIFY_FUNCTION         PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_LOCK_TIME               PASSWORD      5
KILLIDLE                       PASSWORD_GRACE_TIME              PASSWORD      DEFAULT
16 rows selected
SQL>
3.将配置文件分配给用户:

SQL> select USERNAME,PROFILE from dba_users where username='JASON';
USERNAME                       PROFILE
------------------------------ ------------------------------
JASON                          DEFAULT
SQL> alter user hhpacs profile killidle;
User altered
SQL> select USERNAME,PROFILE from dba_users where username='JASON';
USERNAME                       PROFILE
------------------------------ ------------------------------
JASON                          KILLIDLE
SQL>
例如2、修改profile设置
1)、修改killidle profile设置

alter profile killidle limit
      idle_time 30
      FAILED_LOGIN_ATTEMPTS 30
      PASSWORD_LOCK_TIME 100
2)、查看修改后设置

SQL> select PROFILE,RESOURCE_NAME,RESOURCE_TYPE,LIMIT from DBA_PROFILES WHERE PROFILE='KILLIDLE';
PROFILE                        RESOURCE_NAME                    RESOURCE_TYPE LIMIT
------------------------------ -------------------------------- ------------- ----------------------------------------
KILLIDLE                       COMPOSITE_LIMIT                  KERNEL        DEFAULT
KILLIDLE                       SESSIONS_PER_USER                KERNEL        DEFAULT
KILLIDLE                       CPU_PER_SESSION                  KERNEL        DEFAULT
KILLIDLE                       CPU_PER_CALL                     KERNEL        DEFAULT
KILLIDLE                       LOGICAL_READS_PER_SESSION        KERNEL        DEFAULT
KILLIDLE                       LOGICAL_READS_PER_CALL           KERNEL        DEFAULT
KILLIDLE                       IDLE_TIME                        KERNEL        30
KILLIDLE                       CONNECT_TIME                     KERNEL        DEFAULT
KILLIDLE                       PRIVATE_SGA                      KERNEL        DEFAULT
KILLIDLE                       FAILED_LOGIN_ATTEMPTS            PASSWORD      30
KILLIDLE                       PASSWORD_LIFE_TIME               PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_REUSE_TIME              PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_REUSE_MAX               PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_VERIFY_FUNCTION         PASSWORD      DEFAULT
KILLIDLE                       PASSWORD_LOCK_TIME               PASSWORD      100
KILLIDLE                       PASSWORD_GRACE_TIME              PASSWORD      DEFAULT
16 rows selected
SQL>


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-6266-1-1.html 上篇帖子: Oracle删除表中的列column小结 下篇帖子: ORACLE创建数据库同步快照

尚未签到

发表于 2013-6-13 20:18:28 | 显示全部楼层
一时的冲动,子孙的危机!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-16 06:43:59 | 显示全部楼层
下雨了,别忘了打伞,湿身是小,淋病就麻烦啦*^_^*

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-16 16:19:55 | 显示全部楼层
昨天,系花对我笑了一下,乐得我晚上直数羊,一只羊,两只羊,三只羊……

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-16 21:51:49 | 显示全部楼层
男人靠的住,母猪能上树!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-17 05:46:23 | 显示全部楼层
比我有才的都没我帅,比我帅的都没我有才!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-6-17 12:57:21 | 显示全部楼层
走过了年少,脚起了水泡

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表