我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle中的profile参数及用法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle中的profile参数及用法是什么

这篇文章将为大家详细讲解有关Oracle中的profile参数及用法是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、profile功能
      oracle系统中的profile是用来对用户所能使用的数据库资源进行限制的。
   
    二、profile参数详解     
             (1)查看数据库资源限制参数

               SQL> select * from dba_profiles;

PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT

------------------------------ -------------------------------- -------- --------------------

DEFAULT                        COMPOSITE_LIMIT                  KERNEL   UNLIMITED

DEFAULT                        SESSIONS_PER_USER                KERNEL   UNLIMITED

DEFAULT                        CPU_PER_SESSION                  KERNEL   UNLIMITED

DEFAULT                        CPU_PER_CALL                     KERNEL   UNLIMITED

DEFAULT                        LOGICAL_READS_PER_SESSION        KERNEL   UNLIMITED

DEFAULT                        LOGICAL_READS_PER_CALL           KERNEL   UNLIMITED

DEFAULT                        IDLE_TIME                        KERNEL   UNLIMITED

DEFAULT                        CONNECT_TIME                     KERNEL   UNLIMITED

DEFAULT                        PRIVATE_SGA                      KERNEL   UNLIMITED

DEFAULT                        FAILED_LOGIN_ATTEMPTS            PASSWORD 10

DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_REUSE_TIME              PASSWORD UNLIMITED

DEFAULT                        PASSWORD_REUSE_MAX               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_VERIFY_FUNCTION         PASSWORD NULL

DEFAULT                        PASSWORD_LOCK_TIME               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_GRACE_TIME              PASSWORD UNLIMITED

MONITORING_PROFILE             COMPOSITE_LIMIT                  KERNEL   DEFAULT

MONITORING_PROFILE             SESSIONS_PER_USER                KERNEL   DEFAULT

MONITORING_PROFILE             CPU_PER_SESSION                  KERNEL   DEFAULT

MONITORING_PROFILE             CPU_PER_CALL                     KERNEL   DEFAULT

MONITORING_PROFILE             LOGICAL_READS_PER_SESSION        KERNEL   DEFAULT

MONITORING_PROFILE             LOGICAL_READS_PER_CALL           KERNEL   DEFAULT

MONITORING_PROFILE             IDLE_TIME                        KERNEL   DEFAULT

MONITORING_PROFILE             CONNECT_TIME                     KERNEL   DEFAULT

MONITORING_PROFILE             PRIVATE_SGA                      KERNEL   DEFAULT

MONITORING_PROFILE             FAILED_LOGIN_ATTEMPTS            PASSWORD UNLIMITED

MONITORING_PROFILE             PASSWORD_LIFE_TIME               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_REUSE_TIME              PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_REUSE_MAX               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_VERIFY_FUNCTION         PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_LOCK_TIME               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_GRACE_TIME              PASSWORD DEFAULT

32 rows selected.

Unlimited:分配该profile的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。

Default:指定为default意味着忽略对profile中的一些资源限制,Default profile初始定义对资源不限制,可以通过alter profile命令来改变。

     (2)参数详解

       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)中所允许分配的最大空间,以字节为单位。

 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_reuse_time和password_reuse_max:这两个参数必须互相关联设置,password_reuse_time指定了密码不能重用前的天                                                                             数,而password_reuse_max则指定了当前密码被重用之前密码改变的次数。两个参                                                                           数都必须被设置为整数。

 Password_lock_time:指定登陆尝试失败次数到达后帐户的锁定时间,以天为单位。

 Password_grace_time:指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。

 Password_verify_function:该字段允许将复杂的PL/SQL密码验证脚本做为参数传递到create profile语句。Oracle数据库提供了一个默认                                               的脚本,但是自己可以创建自己的验证规则或使用第三方软件验证。 对Function名称,指定的是密码验证规                                               则的名称, 指定为Null则意味着不使用密码验证功能。如果为密码参数指定表达式,则该表达式可以是任意                                                 格式,除了数据库 量子查询。


    三、使用profile    

         (1)创建profile,命令如下:

CREATE PROFILE profile  profile_name
LIMIT { resource_parameters
         | password_parameters
         }
           [ resource_parameters
           | password_parameters
           ]... ;


         (2) profile分配给用户,命令如下:
             alter  user  user_name  profile  profile_name;

    四、举例
     
          (1)创建一个用户u1

       SQL> show user;
                USER is "SYS"
       SQL> create user u1 identified by u1;
                 User created.
       SQL> grant create session to u1;
                Grant succeeded.

          (2)创建profile为p1用来限制用户尝试登陆失败2次后会被锁定
                 SQL> create profile p1 limit FAILED_LOGIN_ATTEMPTS 2;
                           Profile created.

         (3)把创建的p1分配给u1
                SQL> alter user u1 profile p1;
                     User altered.

         (4)尝试验证
          SQL> select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE from dba_users where username='U1';
                    USERNAME   ACCOUNT_STATUS    LOCK_DATE    PROFILE
                   ---------- -------------------------------- --------- ------------------------------  //看u1用户的状态没有被锁
                         U1                     OPEN                     P1

         SQL> conn u1/a1;
                    ERROR:
                    ORA-01017: invalid username/password; logon denied
                    Warning: You are no longer connected to ORACLE.
                                                                                                                 //尝试两次失败登陆
         SQL> conn u1/a1;
                    ERROR:
                     ORA-01017: invalid username/password; logon denied

        SQL> select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE from dba_users where USERNAME='U1';
                 USERNAME        ACCOUNT_STATUS    LOCK_DATE     PROFILE
                 --------------- ------------------------------ -----------  ------------------- //查看U1用的状态,已经被锁
                      U1              LOCKED(TIMED)        05-MAR-14             P1

      SQL> conn u1/u1;
                ERROR:                                                            //在被锁之后,使用正确的密码也不能再登陆
                ORA-28000: the account is locked                                                    
                 Warning: You are no longer connected to ORACLE.

        (5)解决办法:第一种可以等Password_lock_time参数设定的天数过了之后自动解锁,第二种需要管理员帮助,为用户解锁,在此选择第二种方法                                求职管理员。
             
              SQL> show user;
                        USER is "SYS"

                SQL> alter user u1 account unlock identified by u1;          //用户解锁时可以使用之前的密码
                           User altered.
               SQL> conn u1/u1;
                          Connected.
                SQL> show user;
                          USER is "U1"                       //u1用户成功登陆

关于Oracle中的profile参数及用法是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle中的profile参数及用法是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

​oracle中Parallel参数的用法是什么

OracleParallel参数允许实例利用多个处理器来提高并行查询和DML操作的性能。设置PARALLEL_MAX_SERVERS激活并行处理。通过PARALLEL_DEGREE_POLICIES和PARALLEL_DML_POLICIES控制查询和DML并行化。并行度可通过PARALLEL_MIN_SERVERS和PARALLEL_MAX_SERVERS调整。高级选项提供额外的控制,例如强制本地或远程执行。最佳实践包括优化查询、设置适当并行度、监控性能和根据需要调整参数。
​oracle中Parallel参数的用法是什么
2024-04-11

mysql中profile的使用方法是什么

在MySQL中,PROFILE是一个用于分析查询性能的工具。它可以显示查询执行时所涉及的各种信息,包括查询优化器如何优化查询、查询执行的时间、扫描的行数等等。要使用PROFILE,可以在执行查询时在查询前面添加关键字PROFILE,例如:
mysql中profile的使用方法是什么
2024-03-14

mysql中profile的作用是什么

在MySQL中,PROFILE是一个用于分析查询语句性能的工具。通过使用PROFILE,可以查看查询语句的执行计划、扫描行数、扫描时间等信息,帮助用户优化查询语句,提高查询性能。PROFILE可以显示查询语句执行时的各种统计信息,包括查询时
mysql中profile的作用是什么
2024-03-14

golang rest参数的用法是什么

在Golang中,可以使用"…"语法来定义一个函数的可变参数,也称为rest参数。它允许函数接受任意数量的参数。以下是一个使用rest参数的示例:func sum(nums ...int) int {result := 0for _,
golang rest参数的用法是什么
2024-02-29

oracle中nvl函数的用法是什么

在Oracle数据库中,NVL函数用于判断一个表达式是否为NULL,如果是NULL则返回另一个指定的值,如果不是NULL则返回该表达式的值。NVL函数的语法如下:NVL(expr1, expr2)其中,expr1是需要判断是否为NULL的表
2023-08-28

oracle中upper函数的用法是什么

在Oracle数据库中,UPPER函数是一个用来将字符串转换为大写的函数。其语法如下:UPPER(string)其中,string是需要转换为大写的字符串。例如:SELECT UPPER('Hello, World!'
oracle中upper函数的用法是什么
2024-03-01

oracle中chr函数的用法是什么

在Oracle中,CHR()函数用于返回指定ASCII代码所对应的字符。它的语法如下:CHR(ascii_code)其中,ascii_code是要转换为字符的ASCII码值。例如,如果想要将ASCII码值为65(对应大写字母A)转换为字符
oracle中chr函数的用法是什么
2024-04-09

oracle中isnull函数的用法是什么

在Oracle中,不像其他数据库系统(如SQL Server)有ISNULL函数,而是使用NVL函数来实现类似的功能。NVL函数的语法如下:NVL(expr1, expr2)该函数接受两个参数。如果expr1不为NULL,则返回exp
oracle中isnull函数的用法是什么
2024-04-09

oracle中row_number函数的用法是什么

在Oracle中,ROW_NUMBER()函数用于为结果集中的每一行分配一个唯一的整数值。它常用于排序和分页查询。ROW_NUMBER()函数的语法如下:ROW_NUMBER() OVER (ORDER BY column1, colu
oracle中row_number函数的用法是什么
2024-04-09

oracle中greatest函数的用法是什么

在Oracle数据库中,GREATEST函数用于从给定的参数中返回最大的值。它接受两个或多个参数,并返回这些参数中的最大值。语法:GREATEST(value1, value2, ...)参数:value1, value2, …:要比较
oracle中greatest函数的用法是什么
2024-04-09

oracle中translate函数的用法是什么

在Oracle中,TRANSLATE函数用于替换字符串中的字符。它接受三个参数:源字符串、要被替换的字符集合和替换字符的集合。用法如下:TRANSLATE(source_string, characters_to_replace, re
oracle中translate函数的用法是什么
2024-04-09

Oracle中regexp函数的用法是什么

Oracle中的regexp函数用于执行正则表达式匹配操作。regexp函数有两个参数:pattern和source。pattern是一个正则表达式模式,用于指定要匹配的字符串模式。source是要进行匹配操作的字符串。regexp函数返
Oracle中regexp函数的用法是什么
2024-04-09

oracle中convert函数的用法是什么

在Oracle数据库中,CONVERT函数用于将一个字符串从一种字符集转换成另一种字符集。其语法为:CONVERT(string, target_charset, source_charset)其中,string是要转换的字符串,targ
oracle中convert函数的用法是什么
2024-04-09

oracle中instr函数的用法是什么

Oracle中的INSTR函数用于查找一个字符串在另一个字符串中第一次出现的位置。它的语法如下:INSTR(string, substring, [start_position], [nth_appearance])- string:要在其
2023-08-31

oracle中ltrim函数的用法是什么

在Oracle中,ltrim函数用于去除字符串左边指定的字符(默认为空格)。语法:ltrim(string, [trim_character])参数说明:string:要去除左边字符的字符串trim_character:可选参数,要去
oracle中ltrim函数的用法是什么
2024-05-21

oracle中rpad函数的用法是什么

在Oracle中,RPAD函数用于向字符串的右侧添加指定数量的字符,使得字符串达到指定长度。其语法如下:RPAD(string, length, pad_string)参数说明:string:要填充的字符串length:填充后的字符串总
oracle中rpad函数的用法是什么
2024-04-09

oracle中nullif函数的用法是什么

在Oracle中,NULLIF函数用于比较两个表达式,并在它们的值相等时返回NULL,否则返回第一个表达式的值。NULLIF函数的语法如下:NULLIF(expr1, expr2)其中,expr1和expr2是要比较的两个表达式。使用
oracle中nullif函数的用法是什么
2024-04-09

oracle中decode函数的用法是什么

在Oracle中,DECODE函数用于根据给定的条件对一个表达式进行检查并返回结果。它的基本语法如下:DECODE(expr, search1, result1, search2, result2, …, default_result)
oracle中decode函数的用法是什么
2024-04-09

oracle中ceil函数的用法是什么

在Oracle中,CEIL函数用于返回大于或等于指定数字的最小整数。该函数的语法如下:CEIL(number)其中,number是一个数字表达式,可以是一个数字、日期、时间或日期时间。以下是一些示例:CEIL(10.3)将返回11,因
oracle中ceil函数的用法是什么
2024-04-09

编程热搜

目录