profile:作为用户配置文件,它是密码限制,资源限制的命名集合

在安装数据库时,Oracle自动会建立名为default的默认配置文件

使用profile文件时,要注意以下几点:

建立用户时,如果不指定profile选项,Oralce会自动将default分配给相应的数据库用户

建立profile文件时,如果只设置了部分密码和资源限制,其他选项会自动使用默认值

使用profile管理密码时,密码管理选项总是处于被激活状态;而如果使用profile管理资源,必须激活资源限制

一个用户只能分配一个profile文件。如果要同时管理用户的密码和资源,那么在建立profile时应该同时指定密码和资源选项

使用profile管理密码

可以实现账户锁定、密码的过期时间、密码历史和密码的复杂度

账户锁定

  当用户连续输入多少次错误密码后,Oracle会自动锁定用户的账户,并且可以规定账户的锁定时间,由以下参数

--failed_login_atempts:该参数限制用户在登录到Oracle数据库时允许失败的次数。

--password_login_time:该参数用于指定账户被锁定的天数

如:创建的profile文件,要求设置连续失败次数为5,超过该次数后,账户被锁定7天,用alter user 将profile文件指定给dongfang

create profile lock_account limit
failed_login_attempts 5
password_lock_time 7
/

alter user dongfang profile lock_account

如果建立profile文件时没有提供这些参数,那么会使用默认值unlimited,这种情况下,需要DBA手动解锁用户账户

密码过期时间

--password_life_time:该参数用于设置口令的有效时间,单位为天数

--password_grace_time:该参数用于设置口令失效的“宽限时间”

如:下面创建一个profile文件(password_lift_time),并设置用户的密码有效期为30天,密码宽限3天,然后使用alter user 语句将profile分配给用户dongfang

create profile password_lift_time limit

password_life_time 30

password_grace_time 3;

alter user dongfang profile password_lift_time;

密码历史

  控制账户密码的可重复使用次数或可重用时间

--password_reuse_time:该参数指定密码可重用的时间,单位为天

--password_reuse_max:该参数设置口令在能够重新使用之前,必须改变的次数。

  在使用密码历史选项时,只能使用其中一个参数,并将另外一个参数设置为unlimited

密码的复杂度

  强制用户的密码必须具有一定的复杂度。使用验证函数验证用户的复杂度,只需要将这个函数的名称指定给profile文件中的password_verify_function参数,Oracle就会自动使用该函数对用户的密码和格式进行验证。

  11g中有所改进,$oracle_home\rdbms\admin目录下创建一个新的密码验证文件utlpwdmgsql,其中,不仅提供了验证函数verify_function,还提供了一个新建的verify_function_11g函数。

使用profile管理资源

  如果使用profile管理资源,必须将resource_limit参数设置为true,以激活资源限制。由于该参数是动态参数,所以可以使用alter system语句进行修改

如:首先使用show命令查看resource_limit参数值,然后使用alter system命令修改该参数的值为true,从而激活资源限制

show parameter resource_limit;

alter system  set resource_limit=true;

利用profile配置文件,可以对以下系统资源进行限制:

CPU时间:为了防止无休止地使用CPU时间,限制用户每次调用使用的CPU时间以及在一次会话期间所使用的CPU时间

逻辑读:为了防止过多使用系统的I/O操作,限制每次会话时读取的逻辑数据块数目。

用户的并发会话数

会话空闲的限制:当一个会话空闲的时间达到了限制值时,当前事物被回滚,会话被终止并且所占用的资源被释放

会话可持续的时间:如果一个会话的总计连接时间达到了该限制值,当前事物被回滚,会话被终止并释放所占用的资源

会话所使用的SGA空间限制

  当一个会话或SQL语句占用的资源超过profile文件中的限制时,Oracle将终止并回滚当前的事务,然后向用户返回错误的信息。如果受到的限制时会话级的,在提交或回滚事务后,用户会话将被终止;而受到调用级限制时,用户会话还能继续进行,只是当前执行的SQL语句将被终止。

参数如下:

--session_per_user:用户可以同时连接的会话数量

--cpu_per_session:限制用户在一次进行数据库会话期间可以使用的CPU时间,单位为百分之一秒。

--cpu_per_call:限制用户每条SQL语句所使用的CPU时间

--logical_reads_per_session:限制每个会话所能读取的数据块数量,包括从内存中读取的数据块和从磁盘中读取的数据块

--connect_time:限制每个用户连接到数据库的最长时间,单位为分钟

--idle_time:该参数限制每个用户会话连接到数据库的最长时间。超过该空闲时间的会话,系统会终止该会话。

维护profile文件

1.修改profile文件

如:对password_lift_time文件(profile)的资源文件的资源限制参数进行修改:

alter profile password_lift_time limit
cpu_per_session 20000
sessions_per_user 10
cpu_per_call 500
password_life_time 180
failed_login_attempts 10
/

对配置文件所做的修改只有在用户开始新的会话时才会有效

2.删除profile文件

如:删除分配给dongfang这个用户的password_lift_time配置文件

drop profile password_lift_time cascade

  如果指定的profile,已经分配给某个用户,那么必须在删除时使用cascade,为用户指定的配置文件被删除时,Oracle会指定为用户指定default配置文件

3.显示profile

DD--dba_users

DD--dba_profiles

Oralce-资源配置PROFILE的更多相关文章

  1. Oracle从入门到精通(笔记)

    一.Oracle11g概述 1.6 启动与关闭数据库实例 1.6.1 启动数据库实例 Oracle数据库实例启动分3个步骤:启动实例,加载数据库,打开数据库: 命令格式:startup [nomoun ...

  2. Linux程序写入oralce数据库中文显示为问号??? 代码实现设置环境变量!

    Linux程序写入oralce数据库中文显示为问号??? 1.问题介绍 根本原因是字符集的问题,是数据库的字符集和写入程序的linux系统的字符集不一致导致: 但是用export NLS_LANG=& ...

  3. SpringBoot系列四:SpringBoot开发(改变环境属性、读取资源文件、Bean 配置、模版渲染、profile 配置)

    声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念 SpringBoot 开发深入 2.具体内容 在之前已经基本上了解了整个 SpringBoot 运行机制,但是也需要清 ...

  4. SpringBoot开发(改变环境属性、读取资源文件、Bean 配置、模版渲染、profile 配置)

    1.概念 SpringBoot 开发深入 2.具体内容 在之前已经基本上了解了整个 SpringBoot 运行机制,但是也需要清楚的认识到以下的问题,在实际的项目开发之中,尤其是 Java 的 MVC ...

  5. 转:oralce常用操作、查询语句(查看表空间)

    http://highill.iteye.com/blog/1534858 最近整理一下oralce的常用语句,借此记录一下,在网上都应该能搜到,这里主要是整理分享. 一.操作语句 建立表空间 MYD ...

  6. CoreCRM 开发实录 —— Profile

    再简单的功能,也需要一坨代码的支持.Profile 的编辑功能主要就是修改个人的信息.比如用户名.头像.性别.电话--虽然只是一个编辑界面,但添加下来,涉及了6个文件的修改和7个新创建的文件.各种生成 ...

  7. Xamarin+Prism开发详解一:PCL跨平台类库与Profile的关系

    在[Xamarin+Prism小试牛刀:定制跨平台Outlook邮箱应用]中提到过以下错误,不知道大伙还记得不: 无法安装程序包"Microsoft.Identity.Client 1.0. ...

  8. source /etc/profile报错-bash: id:command is not found

    由于误操作导致 source /etc/profile 报错 -bash: id:command is not found 此时,linux下很多命令到不能能用,包括vi ls 等... 可以使用 e ...

  9. 【译】Spring 4 @Profile注解示例

    前言 译文链接:http://websystique.com/spring/spring-profile-example/ 本文将探索Spring中的@Profile注解,可以实现不同环境(开发.测试 ...

随机推荐

  1. P5504 [JSOI2011]柠檬

    传送门 显然考虑 $dp$ ,发现从右往左和从左往右是一样的,所以只考虑一边就行 发现对于切的左右端点,选择的 $s0$ 一定要为左右端点的贝壳大小,不然这个端点不产生贡献还不如分开来单个贡献 所以设 ...

  2. linux下docker启动nginx无法访问80端口

    问题: Linux安装了docker,docker启动了一个nginx容器,通过 80 端口无法正常访问 故障排查: 1.检查 nginx 容器启动的命令或者yaml文件,查看是否有跟本机端口进行绑定 ...

  3. JavaScript 模块化简析

    关于模块化,最直接的表现就是我们写的 require 和 import 关键字,如果查阅相关资料,就一定会遇到 CommonJS .CMD AMD 这些名词,以及 RequireJS.SeaJS 等陌 ...

  4. JDK 8 中Stream流中的去重的方法

    JDK 8 中Stream流中去重的方法 1.简单的去重,可以使用distinct()方法去重,该方法是通过比较equals和hashcode值去去重, 2.复杂的去重, 例如,在一个JavaBean ...

  5. vue的请求数据方式

    一,vue-resource请求数据 介绍:vue-resource请求数据方式是官方提供的一个插件 步骤: 1,npm安装     npm  install vue-resource  --save ...

  6. python函数传参和返回值注意事项

    函数传参 空参数 定义函数时括号里面没有形参,调用时不用传参. def func(): print('null para.') # 调用 func() 位置传参 规定形参的数量,调用时必须传递相同数量 ...

  7. VMware Workstation安装CentOs7固定ip地址

    今天发现之前hypervisor配置的CentOs7连接不了了,该死的加密系统和杀毒软件又搞事情了,于是决定试下VMware虚拟机,下载安装后,发现可以连上CentOS7界面,很开心,于是决定把之前的 ...

  8. bzoj3991 [SDOI2015]寻宝游戏 树链的并

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=3991 题解 貌似这个东西叫做树链的并,以前貌似写过一个类似的用来动态维护虚树. 大概就是最终的 ...

  9. 一次Oday提权批量拿取商城服务器root权限

    此问题影响范围巨大,涉及到所有通过niushop开发的商城,希望通过这篇文章能够引起大家的重视.(注:演示的所用商城已经修复了此漏洞) 严重性:特级 解决方案:1.在用户访问漏洞页时对其身份进行判断: ...

  10. nodejs和npm之间的关系

    Node.js是JavaScript的一种运行环境,是对Google V8引擎进行的封装.是一个服务器端的javascript的解释器. 包含关系,nodejs中含有npm,比如说你安装好nodejs ...