版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle体系结构组件
目标
完成这一课的学习后,您应该能达到下列目标:
概括
Oracle体系结构及其主要组件
列出在用户连接到
Oracle例程过程中涉及的结构
Oracle数据库中常用的术语进程(process):一段在内存中正在运行的程序。后台进程(backgroundprocess):进程的一种,在内存中运行时,不占显示,而且它的优先级比前台进程低。可以只有一个前台进程,但可以有多个后台进程。缓冲区(buffer):一段用来临时存储数据的内存区。主机(host):计算机系统的另一个称呼。服务器(server):一台在网络中向其他计算机系统提供一项或多项服务的主机。客户机(client):一台使用由服务器(server)提供服务的计算机系统。口令文件
基本组件概览
例程
SGA重做日志
缓冲区
共享池
数据字典
高速缓存库高速缓存
DBWRSMONPMONCKPTLGWR其它
用户进程
服务器进程
PGA控制文件
数据文件
数据库数据库缓冲区
高速缓存
重做日志文件
Java池
大型共享池
参数文件
归档日志文件
Oracle服务器
Oracle服务器:
是一个数据库管理系统,它为
信息管理提供了开放、综合和
集成的方法
包括
Oracle例程和
Oracle
数据库
Oracle服务器
Oracle例程
Oracle例程:是一种访问
Oracle数据库的方式
始终打开一个,并且只打开一个数据库
由内存结构和后台进程结构组成
后台进程结构
内存结构
例程
SGA重做日志缓冲区
共享池
数据字典高速缓存库高速缓存DBWRSMONPMONCKPTLGWR其它数据库缓冲区高速缓存
Java
池
大型共享池
建立连接和创建会话
连接到
Oracle例程包括:
建立用户连接
创建会话
创建的会话数据库用户
用户进程
服务器进程
建立的连接
Oracle服务器
Oracle数据库
Oracle数据库:
是一个被统一处理的数据集合
包括三类文件
口令文件
参数文件
归档的日志文件
控制
文件
数据
文件
重做
日志
文件
Oracle数据库
物理结构
物理结构包括以下三种文件类型:
控制文件
数据文件
重做日志文件
控制文件数据文件(包括数据字典)
标头
联机重做
日志文件
内存结构
Oracle的内存结构由两个内存区组成,分别是:
系统全局区(SGA):在例程启动时分配,是
Oracle
例程的基本组件
程序全局区(PGA):在服务器进程启动时分配
系统全局区
SGA包括以下几种内存结构:共享池数据库缓冲区高速缓存重做日志缓冲区其它结构(例如锁定和栓锁管理以及统计数据)
在
SGA中还可配置其它两种内存结构:
大型共享池
Java池系统全局区
SGA是动态的
大小由
SGA_MAX_SIZE
参数指定
由
SGA组件以粒组为单位进行分配和跟踪
连续的虚拟内存分配
粒组大小由估算的
SGA_MAX_SIZE
总计大小确定
Oracle执行SQL查询语句的步骤如果用户在SQL*Plus下输入了如下的查询语句:Select*fromstudent;那么,Oracle又是如何来处理这个语句的呢?Oracle执行SQL查询语句的步骤编译(parse)执行(execute)提取数据(fetch)Oracle执行SQL查询语句的步骤
编译:在进行编译时,服务器进程会将SQL语句的正文放入共享池(sharedpool)的库高速缓存(librarycache)中并将完成以下处理:首先在共享池中搜索是否有相同的SQL语句(正文),如果没有就进行后续的处理。检查该SQL语句的语法是否正确。通过查看数据字典来检查表和列的定义。对所操作的对象加编译锁以便在编译语句期间这些对象的定义不能被改变。检查所引用对象的用户权限。生成该SQL语句所需的优化的执行计划(执行步骤)。将SQL语句和执行计划装入共享的SQL区。Oracle执行SQL查询语句的步骤执行:Oracle服务器进程开始执行SQL语句是因为它已获得了执行SQL语句所需的全部资源和信息。提取数据:Oracle服务器进程选择所需的数据行,并在需要时将其排序,最后将结果返回给用户(进程)。共享池
用于存储:
最近执行的
SQL语句
最近使用的数据定义它包括以下两个与性能相关的关键内存结构:库高速缓存数据字典高速缓存其大小由
SHARED_POOL_SIZE
参数确定共享池数据字典高速缓存库高速缓存ALTERSYSTEMSETSHARED_POOL_SIZE=64M;库高速缓存
存储有关最近使用的
SQL和
PL/SQL语句的信息
启用常用语句共享由
“最近最少使用算法”
(LRU)管理
包括以下两个结构:共享的
SQL区共享的
PL/SQL区大小由共享池的大小确定
数据字典高速缓存
数据库中最近使用的定义的集合
包括与数据库文件、表、索引、列、用户、权限和其它数据库对象相关的信息
在语法分析阶段,服务器进程会在数据字典中查找用于解析对象名和验证访问的信息
将数据字典信息高速缓存到内存中,可缩短查询和
DML
的响应时间
大小由共享池的大小决定
数据库缓冲区高速缓存
存储已从数据文件中检索到的数据块的副本
能够大幅提高获取和更新数据时的性能
通过
LRU算法管理
主块的大小由
DB_BLOCK_SIZE
确定
数据库缓冲区
高速缓存
数据库缓冲区高速缓存由独立的子高速缓存组成:
DB_CACHE_SIZEDB_KEEP_CACHE_SIZEDB_RECYCLE_CACHE_SIZE大小可以进行动态调整
设置
DB_CACHE_ADVICE
可收集用于预测不同
高速缓存大小行为的统计信息
统计信息由
V$DB_CACHE_ADVICE
显示
ALTERSYSTEMSETDB_CACHE_SIZE=96M;重做日志缓冲区
记录对数据库数据块所做的全部更改
主要用于恢复
其中记录的更改称作重做条目
重做条目包含用于重新构造或重做更改的信息
大小由
LOG_BUFFER
定义
重做日志
缓冲区
Oracle执行update语句的步骤如果数据和回滚数据不在数据库高速缓冲区中,Oracle服务器进程将把它们从数据文件中读到数据库高速缓冲区中。Oracle服务器进程在要修改的数据行上加锁(行一级的锁)Oracle服务器进程将数据的变化信息和回滚所需的信息都记录在重做日志缓冲区中。Oracle服务器进程将回滚所需的原始值和对数据所做的修改都写入数据库高速缓冲区。之后再数据库高速缓冲区中所有的这些数据块都将被标为脏缓冲区,因为此时内外存的数据是不相同的(不一致的)。Oracle处理insert和delete语句的步骤与处理update语句大体相同。大型共享池
SGA中的可选内存区
分担了共享池的一部分工作
用于:
共享服务器的会话内存
(UGA)I/O服务器进程
备份和恢复操作或
RMAN并行执行消息缓冲区
将
PARALLEL_AUTOMATIC_TUNING
设置为
TRUE不使用
LRU列表
大小由
LARGE_POOL_SIZE
确定
Java池
存储
Java命令的服务分析要求
在安装并使用
Java时是必需的
大小由
JAVA_POOL_SIZE
参数确定
程序全局区
为连接到
Oracle数据库的每个用户进程保留的内存
在创建进程时分配在终止进程时回收仅供一个进程使用服务器进程
PGA用户进程
进程结构
Oracle利用了以下几种进程的优势:
用户进程:在数据库用户请求连接到
Oracle服务器时
启动服务器进程:与
Oracle例程相连接,在用户建立会话
时启动后台进程:在
Oracle例程启动时启动
用户进程
请求与
Oracle服务器交互的程序必须先建立连接不与
Oracle服务器直接交互
数据库用户服务器进程
用户进程建立的连接服务器进程直接与
Oracle服务器交互的程序执行生成的调用并返回相关结果可以是专用服务器或共享服务器
建立的连接
创建的会话数据库用户用户进程服务器进程Oracle服务器
后台进程维护并加强物理结构与内存结构之间的关系
必备的后台进程:
DBWR PMON CKPTLGWR SMON 可选的后台进程:
ARCn LMDn RECOCJQ0 LMON SnnnDnnn PnnnLCKn QMNn数据库写入程序
(DBWn)在以下情况下写入:出现检查点灰数据缓冲区达到阈值没有空闲缓冲区出现超时执行了
RACping请求表空间处于
OFFLINE
状态表空间处于
READONLY
状态对表执行
DROP
或
TRUNCATE
操作对表空间执行
BEGINBACKUP
操作例程
SGA控制
文件数据
文件重做
日志
文件数据库DBWn数据库
缓冲区
高速缓存日志写入器
(LGWR)LGWR在以下情况下写入:提交时三分之一填满时有1MB的重做时每隔三秒DBWn写入前例程SGA控制
文件数据
文件
重做
日志
文件数据库重做日志
缓冲区
DBWnLGWROracle快速提交技术当在SQL*Plus中发了commit语句之后,Oracle的内部操作步骤如下:服务器进程将把提交的记录连同所产生的SCN(systemchangenumber)一起写入重做日志缓冲区中。重做日志写进程(LGWR)将把重做日志缓冲区中一直到所提交的记录(包括该记录)的所有记录连续地写到重做日志文件中。Oracle通知用户(进程)提交已经完成。服务器进程将修改数据库高速缓冲区中的相关数据的状态并释放资源和打开锁等。系统监控程序
(SMON)职责:例程恢复前滚重做日志中的更改打开数据库供用户访问回退未提交的事务处理合并空闲空间回收临时段控制
文件数据
文件
重做
日志
文件数据库例程
SGASMON过程监视器
(PMON)进程失败后,通过以下方法进行清理:
回退事务处理释放锁释放其它资源重新启动已失效的调度
程序
PGA区
例程SGAPMON检查点
(CKPT)职责包括:在检查点发信号给
DBWn使用检查点信息更新数据文件的标头使用检查点信息更新控制文件控制
文件数据
文件重做
日志
文件数据库例程SGADBWnLGWRCKPT归档程序
(ARCn)可选的后台进程设置
ARCHIVELOG
模式时自动归档联机重做日志保留数据库的全部更改记录
ARCn归档的
重做日
志文件控制
文件数据
文件重做
日志
文件逻辑结构指示数据库物理空间的使用情况层次结构由表空间、段、区和块组成
表空间数据文件段块区段处理
SQL语句
通过以下进程连接到一个例程:
用户进程服务器进程所用的
Oracle服务器组件取决于
SQL语句的类型:
查询语句返回行DML语句记录更改提交操作确
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度版权购买合同:影视作品版权购买与授权
- 2024年度成建制劳务分包商的违约责任合同
- 2024年度不锈钢栏杆工程承包合同
- 2024年度农业企业社会责任履行与评估合同
- 2024年度智能制造生产线购销合同
- 比基尼泳装市场发展现状调查及供需格局分析预测报告
- 2024年度城中村改造拆除合同
- 2024年度企业并购重组顾问合同(标的:亿元并购咨询服务)
- 2024年度人力资源服务合同标的为人才招聘外包
- 2024年度版权许可合同:音乐作品《梦回2024》的线上线下播放权许可
- 2024年消防月全员消防安全知识专题培训-附20起典型火灾案例
- 中国寰球工程有限公司招聘笔试题库2024
- 2024-2030年中国纺织服装行业市场发展分析及发展趋势与投资研究报告
- 人教版八年级数学上册第15章《分式》全部教案(共12课时)
- 2024年社区工作者考试题库及答案
- 电子信息工程专业大学生生涯发展展示
- 10以内口算100道题共16套-直接打印版
- 大中专毕业生转正定级表
- 高强Q460钢焊接作业指导书
- (完整版)小学四年级英语阅读理解20篇)
- 砸墙安全责任书
评论
0/150
提交评论