Oracle中的概要文件

目录

一、什么是概要文件?

二、概要文件的管理

2.1.查询概要文件

2.1.1.查询数据库中存在的概要文件

2.1.2.查看特定概要文件的参数

[2.1.3.分类查看(资源参数 vs 密码参数)](#2.1.3.分类查看(资源参数 vs 密码参数))

2.2.创建概要文件

2.3.修改概要文件

2.4.删除概要文件


概要文件:profile

PROFILE是Oracle中的概要文件,在PROFILE中主要存放的就是数据库中的系统资源或者数据库使用限制的一些内容

通俗点讲就是用于限制数据库资源,配置的一个特殊文件。

一、什么是概要文件?

PROFILE就是Oracle中的概要文件,在Oracle系统中如果不创建概要文件,默认会在系统中使用默认的概要文件DEFAULT。如果创建用户时没有为用户设置概要文件,那么默认都会使用数据库中的默认概要文件。概要文件会给数据库管理员带来很大的方便,数据库管理员可以先对数据库中的用户分组,按照每一组的权限不同,建立不同的概要文件。需要说明的一点是,虽然概要文件可以用于用户,但是概要文件是不能在角色中使用的。

二、概要文件的管理

2.1.查询概要文件

2.1.1.查询数据库中存在的概要文件

查询数据库的概要文件PROFILE,在SQL*Plus中如果需要查看概要文件,可以系统数据字典DBA_PROFILES中查询得到。

语法:select distinct profile from dba_profiles;

操作系统默认是有三个概要文件,分别为DEGAULT、ORA_STIG_PROFILE、GSM_PROF,我这里有四个,是因为我当初在新建用户dba_news_user01用户时,对概要文件进行了指定。所以多了一个这个。

2.1.2.查看特定概要文件的参数

-- 查看DEFAULT的所有参数

SELECT RESOURCE_NAME, RESOURCE_TYPE, LIMIT, COMMON

FROM DBA_PROFILES

WHERE PROFILE = 'DEFAULT'

ORDER BY RESOURCE_TYPE, RESOURCE_NAME;

2.1.3.分类查看(资源参数 vs 密码参数)

-- 查看资源参数(KERNEL)

SELECT RESOURCE_NAME, LIMIT

FROM DBA_PROFILES

WHERE PROFILE = 'DEV_PROFILE'

AND RESOURCE_TYPE = 'KERNEL'

ORDER BY RESOURCE_NAME;

-- 查看密码参数(PASSWORD)

SELECT RESOURCE_NAME, LIMIT

FROM DBA_PROFILES

WHERE PROFILE = 'DEV_PROFILE'

AND RESOURCE_TYPE = 'PASSWORD'

ORDER BY RESOURCE_NAME;

2.2.创建概要文件

在每一个数据库中默认的都是概要文件PROFILE,如果需要添加概要文件,在SQL*Plus中如果需。

语法:

create profile profile

limit

{resource_parameters | password_parameters}

直观点:

CREATE PROFILE profile_name

LIMIT

{ 参数1 值1

参数2 值2

...};

说明:

1)resource_parameters:资源参数。

这些参数主要有CPU_PER_SESSION,代表允许一个会话 占用CPU的总量;CPU_PER_CALL,代表允许一个调用占用CPU的最大值;CONNECT_TIME代表允许一个持续的会话的最大值。

常用的会话级别资源参数:

|---------------------------|-----------|------------------------|
| 参数 | 默认值 | 说明 |
| SESSION_PER_USER | UNLIMITED | 每个用户最大并发会话数 |
| CPU_PER_SESSION | UNLIMITED | 单个会话可用的CPU时间(百分之一秒) |
| CPU_PER_CALL | UNLIMITED | 单次SQL调用可用的CPU时间 |
| CONNECT_TIME | UNLIMITED | 会话最大连接时间(分钟) |
| IDLE_TIME | UNLIMITED | 会话最大空闲时间(分钟) |
| LOGICAL_READS_PER_SESSION | UNLIMITED | 会话最大逻辑读块数 |
| LOGICAL_READS_PER_CALL | UNLIMITED | 单次调用最大逻辑读块数 |
| PRIVATE_SGA | UNLIMITED | 会话在SGA中的私有空间(仅共享服务器模式) |
| COMPOSITE_LIMIT | UNLIMITED | 综合资源限制(加权值) |

调用级资源限制(PER_CALL):该参数用于限制单次SQL操作的资源使用。

**2)password_parameters: 口令参数。**用于管理用户密码的安全策略。

常见的口令参数:

|-----------------------|-----------|-------------|
| 参数 | 默认值 | 说明 |
| FAILED_LOGIN_ATTEMPTS | UNLIMITED | 允许的连续失败登录次数 |
| PASSWORD_LIFE_TIME | UNLIMITED | 密码有效期(天数) |
| PASSWORD_REUSE_TIME | UNLIMITED | 密码可重用时间(天) |
| PASSWORD_REUSE_MAX | UNLIMITED | 密码历史记录数 |
| PASSWORD_LOCK_TIME | UNLIMITED | 账户锁定时间(天) |
| PASSWORD_GRACE_TIME | UNLIMITED | 密码过期后宽限期(天) |

注意:

  1. PASSWORD_REUSE_TIME、PASSWORD_REUSE_MAX两个参数不能同时设置具体数值

  2. 必须有一个设为 UNLIMITEDDEFAULT

  3. 如果两个都设为UNLIMITED,表示无密码重用限制

例如:

CREATE PROFILE dev_profile LIMIT

FAILED_LOGIN_ATTEMPTS 5 -- 5次失败锁定

PASSWORD_LIFE_TIME 90 -- 90天有效期

PASSWORD_REUSE_TIME 365 -- 1年内不能重用

PASSWORD_REUSE_MAX DEFAULT -- 记住历史密码

PASSWORD_LOCK_TIME (1/24) -- 加括号,表示锁定1小时

PASSWORD_GRACE_TIME 7 -- 过期后7天宽限期

SESSIONS_PER_USER 5

CPU_PER_SESSION UNLIMITED

CPU_PER_CALL 3000 -- 单次调用最多30秒CPU时间

CONNECT_TIME 480 -- 最多连接8小时

IDLE_TIME 60 -- 空闲超时1小时

LOGICAL_READS_PER_SESSION UNLIMITED

LOGICAL_READS_PER_CALL 1000;

2.3.修改概要文件

修改概要文件PROFILE的语法与创建概要文件的语法非常相似。修改概要文件PROFILE的语法如下:

ALTER PROFILE profile

LIMIT

{resource_parameters | password_parameters}

例如:

下面就利用上面的语句,完成修改概要文件DEFUALT的操作,把概要文件DEFUALT的每秒CPU的会话时间改为1000。代码如下:

ALTER PROFILE TESTPROFILE

LIMIT

CPU_PER_SESSION 1000;

在修改概要文件时也可以同时修改多个配置,没有修改的配置还保持原样。

2.4.删除概要文件

使用语句删除概要文件是很容易的,使用DROP语句就可以完成。具体语法如下:

DROP PROFILE profile_name CASCADE

说明:

1)CASCADE:如果要删除的概要文件已经被用户使用过,那么在删除概要文件时要加上该关键字,把用户所使用的概要文件也撤销;如果要删除的概要文件没有被用户使用过,那么就可以省略该关键字。

例如:在SQL*Plus中删除概要文件TESTPRO,利用上面的语句,删除概要文件TESTPRO。

代码如下:

DROP PROFILE TESTPRO CASCADE

相关推荐
XIAOHEZIcode3 小时前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户03284722207019 小时前
如何搭建本地yum源(上)
运维
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
冬奇Lab3 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence3 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神3 天前
三、用户与权限管理
数据库·mysql
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠4 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质4 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工4 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信