Oracle体系结构详解.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle体系结构就是围绕这张图展开的,要想深入了解oracle,就必须把这张图搞明白。 如图: ? 一、基本组成: Oracle server: ?? 一般情况下是一个instance和一个database组成 ?? 1个instance只能对应一个数据库。 ??? 特殊:1个数据库可以有多个instance(rac) ??????? 一台服务器上同时可装多套版本的数据库软件,每个数据库软件可建多个数据库,但是每个数据库只对应一个instance,也可以理解成每个数据库只有一个SID 。 ?????????利用DBCA建出的每个库都是相对独立的,在同一服务器上如果创建多库必须将环境变量的参数文件做区分,并且在对实例切换时需如下操作: ????????connect?? 用户名/密码@实例的服务名 ? ? Oracle Instance: 是由内存(SGA)和后台进程(backupground Process)组成 通过instance来访问database 一个实例只能打开一个数据库 ? Oracle database: 数据文件(Data files): ??? 数据文件永远存储数据库的数据,包括数据字典、用户数据(表、索引、簇)、undo数据等 重做日志(Redo log): “先记后写” 重做日志用于记录数据库的变化,当进行例程恢复或介质恢复时需要使用重做日志 执行DDL或DML操作时,事物变化会被写到重做日志缓冲区,而在特定的时刻LGWR会将重做日志缓冲区中的内容写入重做日志。 控制文件(Control file) 控制文件用于记录和维护数据库的物理结构,并且每个Oracle数据库至少要包含一个控制文件。 归档日志(Archive log): 是非活动(Inactive)重做日志的备份。 口令文件(Password file): 用于验证特权用户(具有SYSDBA、SYSOPER权限的特殊数据库用户) 参数文件(Parameter file): 用于定义启动实例所需要的初始化参数,包括文本参数文件(pfile)和服务器参数文件(spfile)(二进制文件放入裸设备,引入spfile) ? User and Server process : 在执行sql语句时产生的进程,每一个连接,oracle server创建一个session,产生一个server process,在client发起一个connection时就产生了一个user process。 ? ? 体系结构可以分为,database结构和instance结构 如下结构: ? ? ?二、instance结构详解 ?? 1、? 内存结构 ? 主要包括sga(system global area)和pga(program global area) ? Pga是当程序起来时,给server process用(排序,数据挖掘等 order by) ? SGA(System Global Area)由一组内存结构组成,它是由所有用户进程共享的一块内存区域。启动例程时,Oracle自动分配SGA,关闭例程时,oracle自动释放SGA所占用的内存空间。 ? Sga包括,share pool,db buffer cache,redo log buffer,large pool,java pool。 在9i 中我们都知道在管理Oracle中使用动态SGA时,Granule(是连续虚拟内存分配的单位)的大小是和SGA的大小有关系。 SGA 分配的最小单元为一个granule.Oracle SGA的大小总是granule的整数倍,即分配是以整数个granule来分配的。 9i 中的规则如下: ? linux/unix ?? SGA =128 M? granule 4M ?? SGA 128M???? granule 16M ? Windows ?? SGA =128 M ??granule 4M ?? SGA 128M???? granule 8M 10g 中的分配规则为 ? linux/unix ? SGA =1G? ?granule 4M ? SGA 1G??? granule 16M ? Windows ? SGA =1G? ?granule 4M ? SGA 1G???? granule 8M ?SQL select component, granule_size from v$sga_dynamic_components; COMPONENT??????????????????????????????????????????????????????? GRANULE_SIZE shared pool??????????????????????????????

文档评论(0)

zzqky + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档