ORACLE基本概念及操作

上传人:cn****1 文档编号:546626009 上传时间:2023-02-19 格式:DOCX 页数:33 大小:119.75KB
返回 下载 相关 举报
ORACLE基本概念及操作_第1页
第1页 / 共33页
ORACLE基本概念及操作_第2页
第2页 / 共33页
ORACLE基本概念及操作_第3页
第3页 / 共33页
ORACLE基本概念及操作_第4页
第4页 / 共33页
ORACLE基本概念及操作_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《ORACLE基本概念及操作》由会员分享,可在线阅读,更多相关《ORACLE基本概念及操作(33页珍藏版)》请在金锄头文库上搜索。

1、一 .基本概念1.1 数据库和数据库实例数据库( database ) 即数据的集合, 数据库是用存储数据的一种媒介, Oracle数据库由参数文件,控制文件,数据文件,日志文件,口令文件等等文件组成。数据库实例 ( instance ) 就是我们访问数据库的通道, Oracle 数据库实例由系统全局区 ( System Global Area , SGA ) 和后台进程( background processes )组成。通常情况下,一个oracle 实例只能同时打开一个oracle 数据库。一个数据库能同时被多个实例打开(RAC )。1.2 内存结构图Oracle内存结构SGASGA (S

2、ystem Global Area 系统全局区域)是一组包含一个Oracle实例的数据和控制信息的共享内存结构。* 是为Oracle系统分配的共享内存;* 是实例的主要组成部分;* 是影响数据库性能的非常重要因素;* 随实例启动/关闭而被分配/回收。DB buffer cacheDatabase buffer cache :缓存了从磁盘上检索的数据块。Shared Pool缓存了各会话间可共享的各种结构。Library cache缓存了可执行的SQL和PL/SQL代码Data Dictionary Cache缓存了数据字典Result Cache缓存查询结果和PL/SQL函数结果,可选Larg

3、e Poollarge_pool用来分配大内存块,来处理 shared pool不适合处理的大内存分配。使用 large_pool 的对象主要有:* 共享程服务器 MTS :在SGA的large_pool中分配UGA ;* 语句的并行查询 Parallel Exection :用作进程间的消息缓冲器;* 恢复管理器RMAN :备份时用作磁盘I/O缓冲器。Redo Log Buffer对数据库的任何修改都按顺序被记录在该缓冲区 (插、删、改),然后由LGWR进程根据条 件将更改信息批量写入磁盘的 redolog文件,以节省磁盘IO。该缓存不参与ASMM的 动态管理,不能自动调整大小。Java P

4、ool保存了 JVM中特定会话的java code和数据PGAPGA (Program Global Area ,程序全局区)是一个 非共享的内存结构,包含了 Oracle进程的独有数据和控 制信息,PGA在Oracle进程启动时有 Oracle Database 创建。一个PGA仅为一个服务进程或后来进程而存 在,各个单独的 PGA的结合称之为 Total Instance PGA 或Instance PGA 。Private SQL Area私有SQL区存储解析后的SQL语句信息和其他一些会话特有的信息,当服务进程执行SQL和PL/SQL代码时,进程使用私有 SQL区来存储绑定变量,查询状

5、态信息等。SQL Work AreasSQL工作区也是一个私有的 PGA内存区域,用于执行一些内存密集型的操作,例如,排序操作用sort area 来对一些行进行排序,hash join 操作用hash area 创建hash表,bitmap merge操作用 bitmap merge area 来对多个 bitmap index进彳f merge 操作。Session Memory用于专用服务器模式时分配 UGAUGAUGA (User Global Area ,用户全局区)存储会话变量,如登录信息等,以及其他一些数据库会话需要的信息。1.3 专用服务器和共享服务器专用服务器进程(Dedic

6、ated Server,默认)每次在对Oracle进行访问白时候,Oracle服务器的Listener会得到这个 访问请求,然后会为这个访问产生(在 UNIX上,这是通过fork()和exec() 系统调用做到的)一个新的进程来进行服务一个服务进程对应一个用户进程;优点:每个用户连接分配一个服务器进程,响应迅速及时;缺点:每个用户连接需分配一个 PGA内存,资源耗费大。共享服务器进程(MultiTreaded Server)在数据库的初始化的时候就会创建一批服务器连接的进程,然后把这些连接进程放入一个连接池来进行管理。初始化的池中的进程数量在数据库初始化建立的时候是可以手动设置的。在连接建立的

7、时候, Listener 首先接受到客户端的建立连接的请求, 然后 Listener 去生成一个叫做调度器(dipatcher)的进程与客户端进行连接。调度器把把客户端的请求放在SGA(系统全局域)的一个请求队列中,然后再共享服务器连接池中查找有无空闲的连接,然后让这个空闲的服务器进行处理。 处理完毕以后再把处理结果放在SGA 的相应队列中。调度器通过查询相应队列,得到返回结果,再返回给客户端。优点:共享服务器进程数量固定,占用内存资源少;缺点:大操作长时间占用共享服务器时易造成其他连接挂起。1.4进程结构In4ianceSystern Glcbal Aren (SGALarge Pool:

8、PMON,RECOA equest QueueIQueue口/Fr&e Mwnory/I。Buffer AraTv?/Roda BufferQthenADBWntabS4Butler CacheServerProcessSEams Pxrftli;kgrcxjrtl ProctMi$eiPodSOL Wo* AraiinnI CKrrj LGWR | qRCn | | RVWT |Session Hemory Private SOL Awi:Client Pfqcm*图Oracle后台进程和SGA客户端进程(Client processes):运行应用程序或Oracle工具代码Oracle进程

9、:运行Oracle数据库代码,主要分为下列几种类型:后台进程(Background Processes):随实例启动而启动,执行一些维护任务,如:实例恢复,进程清理,写日志缓存/数据块缓存到磁盘等。服务进程(Server Processes):为客户端请求工作,如,解析 SQL查询,将解析结果放入shared pool,为每个查询语句创建执行计划,从database buffercache或磁盘读取数据块等 从属进程(Slave processes):执行后台进程或服务进程的一些额外工作。ORACLE主要进程简述:进程名称进程完整名称简单描述完整描述属性ARCnArchiverProcess当

10、 redo log files 满或 og file switch发生时将redo log files归档ARCn进程仅当数据库在归档模式下切自动归档开启时存在,在这种情况下,在未完成归档时LGWR进程不能复用在线日志组。数据库会根据需要启动多个归档进程,编号从 ARC0-ARC9,ARCa-ARCt.DatabaseinstanceCKPTCheckpointProcess在checkpoints 点时通 知DBWR进程,并将数 据库最新的checkpoint 更新到所有数据文件和 控制文件在特定的时间CKPT通过通知DBWR进程开始写脏 块的方式开始一个 checkpoint 请求,当各个

11、 checkpoint 请求完成时,CKPT进程更新所有数据 文件头和控制文件以记录最近一个checkpoint 。Database and ASM instancesDBW nDatabaseWriterProcess将修改过的数据块从database buffer cache写到磁盘DBWR进程最主要的职责是写数据块到磁盘,它也处理Checkpoints ,并记录数据块写入记录。DatabaseinstanceDIA0DiagnosticProcess检测并处理hang和死锁ASM andDatabase instancesDIAGDiagnosticCaptureProcess执行诊断日

12、志 dumpDIAG进程执行其他进程t#求的诊断日志dump ,并在实例或进程终止时触发 dump 。在ORACLE RAC中,DIAG进程执行远程实例请求的全局诊断 日志dump 。ASM andDatabase instancesLGWRLog WriterProcess将redo entry 写入在线日志文件Writes redo entries tothe online redo logredo log entries 在 SGA 中的 log buffer 中生成, LGWR 将 redo log entry顺序地写入到 redo logfile中。如果数据库有多个日志文件,LGWR

13、将redo log entry 写至U一组 redo log file 中。Database and ASM instancesMMANMemoryManagerProcess实例内存管理该进程执行实例内存组件的resizeDatabase and ASM instancesMMONManageabilit y Monitor Process执行或计划很多管理性 任务Performs or schedules many manageability tasksMMON进程执行很多与管理相关的任务,包括AWR snapshot , ADDM (Automatic DatabaseDiagnosti

14、c Monitor )分析Database and ASM instancesPMONProcessMonitor监控其他后台进程并在 服务进程或dispatcher 进程异常终止时执行进 程恢复PMON定期执行下列清理任务:* 异常终止的进程* 被kill的会话* 被检测到的达到空闲超时时间的事务* 被检测到的达到空闲超时时间的网络连接另外,PMON根据需要监控,产生, 并终止下列进程:Dispatcher进程和共享服务进程Job队列进程可重起的后台进程PMON同时也负责将实例和 dispatcher 进程注册到监听Database and ASM instancesPSP0ProcessS

15、pawnerProcess在初始实例启动后产生ORACLE后台进程Database and ASM instancesSMONSystemMonitorProcess执行一些如实例恢复, dead事务恢复等关键人 物,以及一些临时空间事 务,数据字典清理,undo 表空间管理等管理性任 务SMON执行很多数据库维护任务,包括:创建并管理临时表空间元数据* 回收无主的临时段占用空间* 维护undo 表空间,如:online,offline, 并根据 undo usage statistics 收缩 undo segments* 当数据字典不一致状态时执行清理* 使用Oracle Flashback 特性维护SCN到时间

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号