




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 Oracle数据库的体系构造.2.1 Oracle数据库的物理存储构造Oracle数据库的物理存储构造由存储在磁盘中的操作系统文件组成。包括构成数据库的各种物理文件,包括数据文件,控制文件,重演日志文件,归档重演日志文件,参数文件,警告、跟踪日志文件和备份文件等。.Oracle数据库存储构造 物理存储构造数据文件Data File重做日志文件Redo Log File控制文件Control File 逻辑存储构造表空间Table Space段Segment区Extent块Block.Oracle数据库文件类型及其关联.2.1.1 数据文件Data File 数据库中一切的数据最终都保管
2、在数据文件中。每个Oracle数据库都有一个或多个物理数据文件数据文件中包括表数据索引数据数据字典定义回滚事务所需的信息存储过程、函数和数据包的代码用来排序的暂时数据.一个数据文件只能与一个数据库相关联(N:1)。可以对数据文件设置一些特性,在数据库空间用完的情况下可以自动扩展。一个或多个数据文件构成了一个数据库存储的逻辑单元表空间(table space)。 提示:表空间是数据库存储的逻辑单位。数据库文件假设分开了表空间将失去意义,而表空间假设分开了数据文件将失去物理根底数据文件的特点.例:运用数据字典dba_data_files查看表空间system所对应的数据文件的部分信息。SQLdes
3、c dba_data_files;SQLselect file_name,tablespace_name, autoextensible from dba_data_files where tablespace_name=SYSTEM;dba_data_files表构造:.查询执行结果:.2.1.2 控制文件数据库控制文件(control file)是一个很小的二进制文件,用于维护数据库的全局物理构造,它存放着数据库中数据文件和日志文件的信息。创建数据库时,同时就提供了与之对应的控制文件。每一个控制文件只能与一个Oracle数据库相关联。控制文件包含了数据库实例在启动和正常操作时,访问数据库所
4、需的关于数据库的信息。 一旦损坏,数据库将无法正常任务.查询当前数据库的控制文件信息 运用数据字典:V$controlfile 提示:Oracle普通会默许创建3个包含一样信息的控制文件,分别存储在不同磁盘互为镜像,以防其中之一受损时,数据库可以调用其他控制文件继续任务SQLcolumn name format a50;SQLselect name from V$controlfile;.控制文件包含的信息数据库称号数据库创建的时间戳相关的数据文件、重演日志文件的称号和位置表空间信息数据文件脱机范围日志历史归档日志信息备份组和备份块信息备份数据文件和重演日志信息数据文件拷贝信息当前日志序列数检
5、查点(checkpoint)信息.2.1.3 重做日志文件每一个Oracle数据库都有一个由两个或多个重演日志文件(redo log file)构成的文件组,这组重演日志文件合称为数据库的重演日志。一个重演日志文件是由重做条目(redo entry,也叫重做记录)组成的。重演日志的主要功能是记录下一切数据的改动。重演日志文件中的信息可以用在数据库从系统失败或者介质失败的恢复之中 。 记录数据库一切修正信息的文件,简称日志文件,是数据库最重要的文件之一。其中修正信息包括数据的修正信息或者数据库构造的修正信息等。.为了确保日志文件的平安,在实践运用中,允许对日志文件进展镜像,它们构成一个日志文件组
6、,同一个族的日志文件最好放在不同的磁盘中。Oracle中的多个日志文件组是循环运用的。当一切的日志文件组的空间都被填满后,系统将重新切换到第一个日志文件组,发生日志切换时,日志文件组中已有的信息能否被覆盖取决于系统运转的方式归档方式和非归档方式。日志文件组.2.1.4 其他文件 1.归档重演日志文件 归档重演日志文件(archive log file)就是对写满的重演日志文件进展复制并保管而生成的文件。 可以经过设置数据库为归档方式(ARCHIVELOG mode)下来自动地保管日志文件。归档进程(ARCO)在后台担任把写满的重演日志文件复制到归档日志目的中。归档日志文件在数据库恢复时起决议性
7、作用。.2. 参数文件(parameter file) 参数文件包含了一组关于数据库和实例的配置参数。主要包括数据库名和控制文件所在途径。有文本参数文件parameterFile,简称Pfile。ini.ora和效力器参数文件Server Parameter File ,简称Spfile,spfile.ora两种类型。 Oracle引荐用户运用一个效力器参数文件作为维护初始化参数的动态手段。一个效力器参数文件允许用户在一个效力器端的磁盘文件里耐久地保管和管理初始化参数。.3. 警告、跟踪日志文件 每一个效力器和后台进程都可以写入一个相关的跟踪文件(trace file)。当一个进程发现了一个内
8、部错误的时候,它把关于错误的信息转储到它的跟踪文件里。写入到跟踪文件的一部分信息是给数据库管理员运用的,而其他信息是给Oracle支持效力的。跟踪文件信息还可以用于调整运用程序和实例。 警告文件(alert file)是一种特殊的跟踪文件,一个数据库的警告文件就是包括按时间排序的音讯和错误的记录。 .4. 备份文件 用户管理的备份和恢复实践上就是要求用户在试图恢复备份的时候先复原备份文件。效力器管理的备份和恢复管理了备份过程,例如,调度备份及恢复过程就是在需求恢复的时候施加正确的备份文件。 .主要的逻辑存储构造:表空间各种段数据段索引段暂时段回滚段区间数据块 2.2 Oracle数据库的逻辑存
9、储构造表空间段数据块数据块数据库表空间段区区Oracle数据库的逻辑构造.表空间是Oracle中最大的逻辑存储构造,它与物理上的一个或多个数据文件相对应,每个Oracle数据库都至少拥有一个表空间。表空间的大小等于构成表空间的一切数据文件大小的总和。表空间用于存储用户在数据库中创建的一切的内容。2.2.1 表空间(Tablespace).表空间与数据文件的关系 一个表空间与硬盘上的一个或多个物理数据文件相对应。.例:经过数据字典dba_tablespaces,查看当前数据库的一切表空间的称号SQLselect tablespace_name from dba_tablespaces;Oracl
10、e自动创建的表空间的阐明:见P23页中表2-1.系统表空间暂时表空间工具表空间用户表空间数据库索引表空间回滚表空间主要的数据库表空间.Oracle允许在逐个表空间根底上控制数据库数据的可用性在联机表空间中的数据对于运用程序和数据库来说是可用的在脱机表空间中的数据对于运用程序和数据库来说是不可用的,即使当数据库是可用的也是如此。 联机和脱机表空间.永久表空间和暂时表空间在Oracle数据库中,大多数表空间是永久表空间。永久表空间存储单个SQL恳求和事务中必需存留的信息。Oracle还允许在数据库中创建暂时表空间。暂时表空间使事务可以用于处置复杂SQL操作的大量暂时任务空间,如存储查询、衔接查询和
11、建立索引等。.段是一组盘区,是Oracle管理数据库对象的单位。是终端用户能处置的最小单位。Oracle为段分配的空间是以数据区为单位的,当断的数据区已满,Oracle围棋分配另一个数据区。段的数据区可以是不延续的磁盘空间。段可以分为:数据段、索引段、暂时段、回退段四种类型。2.2.2 段(Segment).1.数据段 用于存储表中的数据。数据段的称号与表的称号一样。系统为分区表的每个分区分配一个数据段。2.索引段 用于存储表中国的一切索引信息。索引段的称号与索引一样。分区索引的每一个分区对应一个索引段。3.暂时表 暂时段用于存储暂时数据。排序或者汇总时所产生的暂时数据都存储在暂时段中,该段由
12、系统在用户的暂时表空间中自动创建,兵在排序或者汇总终了是自动消除。4.回退段 用于存储用户数据被修正之前的值。用于用户进展回退恢复操作时运用。每个Oracle数据库至少拥有一个回退段。.2.2.3 区EXtent区时磁盘空间分配的最小单位,由一个或多个数据块组成。当段中的一切空间被运用完后,系统将自动为该段分配一个新的区。段所包含的区的个数由:minextents和maxextents参数决议。.2.2.4 数据块是用来管理存储空间的最根本的单位,也是最小的逻辑存储单位。块头部:包含数据块中的饿普通属性信息,如物理地址、所属断的类型等。表目录:用来存储相关对象的信息。行目录:用来存储数据块中有
13、效的行信息。空闲空间:数据块中还没有运用的存储空间。行空间: 数据块中已运用的存储空间块头部表目录行目录空闲空间行空间块头部信息区 块的默许大小,由 db_block_size参数在数据库创建时指定,一旦数据库创建胜利后无法修正。.2.2.5表空间、段、分区和数据块的关系图.2.3 Oracle数据库系统构造与实例Oracle数据库系统构造包括:Oracle实例Instance、数据库文件、用户进程、效力器进程,以及其他文件如:密码文件、和归档文件Archive Log File等。Oracle数据库管理系统包括: Oracle数据库 和 Oracle实例 Oracle数据库是一组相关的操作系
14、统文件的集合2.3.1 Oracle数据库系统构造.Library cacheData dict cacheOracle数据库系统构造.Oracle 系统构造图.2.3.2 Oracle数据库实例 Oracle实例由一些内存区和后台进程组成。内存区域主要包括:数据库高速缓存、共享池、流池以及其他可选内存区如java池。后台进程主要由:系统监控进程SMON、进程监控PMON、数据库写进程DBWR、日志写进程LGWR、检验点进程(CKPT)、其他进程如ARCn进程、RECO进程.1. 实例和数据库之间的关系.2. Oracle实例与参数文件每个实例都要用称为SID (system identifi
15、er,系统标识符)的符号来标识 决议实例的大小及组成的参数存储在初始化参数文件(init.ora)中,启动实例时读取这个文件,在运转时可由数据库管理员修正 对该文件的任何修正都只需在数据库下一次启动时才起作用 .2.3.3 Oracle数据库系统的内存构造1.系统全局区(SGA)主要部分组成数据库高速缓存区共享池重做日志缓存区大缓存池固定的SGA。缓冲区域共享区域系统全局区SGA软件代码区域栈空间会话信息其他区程序全局区(PGA)Oracle内存构造图.数据库高速缓存区Database Buffer Cache图 2.8 数据库高速缓存区 用于存储从磁盘数据文件中读取的数据,供一切用户共享,以
16、提高数据库的整体效率.共享池 Share pool图 2.9 共享池中的内存构造 用于保管最近执行的SQL语句、PL/SQL程序的数据字典信息,以用于系统对其进展语法分析、编译和执行的内存区域。.重做日志缓存区用于在内存中存储未被刷新写入联机重做日志文件的重做信息是Oracle在循环方式下运用的先进先出的缓冲区大小可在初始化参数文件中由log buffer参数设定,以字节为单位大缓存池是Oracle的一个可选内存区,主要用于多线程的效力器或备份复原等操作固定的SGA用于存储极大量的值。为了对实例进展操作,这些值需求在内部进展记录。.程序全局区(PGA)独立于SGA,不会出如今SGA中。由操作系
17、统在本地分配。在系统全局区可用的共享内存衔接到Oracle数据库的进程的私有的内存区程序全局区(PGA)程序全局区不能共享程序全局区含有单个进程任务时需求的数据、控制信息、进程会话变量和内部数组等.2.3.4 Oracle数据库系统的后台进程图 2.10 典型的Oracle后台进程集合 在NT效力器上,后台进程的执行是作为Oracle Service的多线程实现的,它允许Oracle进程更有效地运用共享内存地址空间,从而减少了N T 操作系统处置。 Oracle数据库启动时,会启动多个Oracle后台进程,用于异步执行不同的特定义务。经过查询数据字典v$bgprocess可以查看它们的相关信息
18、。.DBWn 进程: 数据库写入进程,担任将数据缓冲区中的数据写入数据文件。其主要有以下几个作用:管理数据缓冲区,一遍用户进程总能找到空闲的缓冲区。将一切修正后的缓冲区数据dirty data写入数据文件。运用LRU算法将最近运用过的块保管在内存中。经过延迟些来优化磁盘I/O读写。DBWn进程最多可以启动20个,分别命名为DBW0,DBW1.DBW9,DBWa,DBWj。由参数db_writer_processes决议。LGWR 进程 日志写入进程,担任管理日志缓冲区的后台进程。 将日志信息同步的写入在线日志文件组中。假设整个日志文件组均无法运用,那么进程会被挂起,直至问题被处理。CKPT 进
19、程检验点进程。普通在发生日志切换时自动产生,用于缩短实例恢复所需求的时间。在检查点期间,该进程更新控制文件与数据文件的标题,从而反映最近胜利SCN系统更改号。参数 Log_checkpoint_timeout:设置检查点产生的时间间隔,默许1800秒。参数 Log_checkpoint_interval:设置一个检查点需求填充的日志文件块的数目。默以为0。.SMON进程:系统监控进程,所担任的任务有:数据库实例缺点恢复管理和维护表空间中的空闲空间系统启动期间,回收一切表空间中的暂时段PMON进程:用户进程监控进程,担任用户进程缺点恢复,清理释放用户进程的内存区域。周期性检查调度进程和效力器进程
20、形状。ARCn进程:归档进程。用于将邪门的日志文件复制到归档日志文件中,防止日志文件组中的日志信息被覆盖或者破坏。运转在数据库效力器归档方式下。RECO进程:存在于分布式数据库系统中,用于自动处理在分布式数据库系统中出现的事务缺点。主要担任事务回滚,坚持分布式系统中数据的一致性。.2.3.5 数据库字典Oracle数据库字典data dictionary,是存储在数据库中的一切对象信息的知识库,Oracle数据库管理系统运用数据字典获取对象信息和平安信息。而用户和数据库系统管理员那么用数据字典查询数据库信息。数据字典中保管有数据库中对象和段的信息,如:表、索引、视图、包、存储过程以及与用户、权
21、限、角色、审计和约束等相关的信息数据字典试只读的,用户不能修正数据信息和构造。数据字典主要有:user视图,all视图,dba视图,v$视图,GV$视图。详见P32 表2-2。.2.4 Oracle数据库的运用构造主要的运用构造有:多磁盘构造磁盘映像系统客户/效力器系统多线程效力器系统并行数据库系统分布式数据库系统Oracle Web Server系统.2.4.1 多磁盘构造图 2.14 多磁盘构造上的Oracle效力器 .2.4.2 磁盘映像系统磁盘映像的益处。磁盘映像可以作为磁盘失效时的备份来运用。可以改良系统的性能.2.4.3 客户/效力器系统 运用程序运转在客户端的任务站上,Oracl
22、e数据库运转在效力器上,二者经过以太网衔接在一同。为了使客户和效力器易于衔接,Oracle提供了SQL*Net的高层网络协议。在客户/效力器环境下,一切客户都安装了SQL*Net客户端软件,效力器那么安装相应的效力端软件。SQL*Net提供了一个程序代码的公用接口,而不用思索其底层的实现。 .基于客户效力器的Oracle系统 图 2.15 基于客户效力器的Oracle系统 .客户机与效力器通讯必需进展的几步操作效力器必需配置成经过网络接受通讯。效力器必需识别哪个数据库允许网络登录。效力器必需运转SQL*Net。客户机必需配置成经过网络进展通讯。客户机必需有充足的内存和磁盘资源可供运用。客户机必
23、需已安装有SQL*Net,并指定一个衔接字符串。.三层方式的Oracle系统computerserver客户机1客户机2数据库效力器运用程序效力器图 2.16 三层方式的Oracle系统.三层配置的优点可量测性有利于运用程序的执行易于分布式处置提高了性能能简化对客户机的维护.2.4.4 多线程效力器系统多线程效力器(MTS)允许多用户会话共享一组效力器进程,因此减少了支持大量用户所必要的资源开销。同时,多线程效力器的体系构造也允许降低这些效力器会话的全部空闲时间。多线程效力器的体系构造不同于公用效力器。 共享效力器进程不直接与调度器或效力器进程交互,而是监控恳求队列。 .多线程效力器的以下参数
24、进展设置mts_dispatchersmts_serversmts_max_servers可以经过在SQL*Plus中查询动态视图V$SESSION来确定当前衔接到启动数据库的类型,假设结果是DEDICATED,那么目前是公用效力器配置;假设结果是SHARED,那么目前是多线程效力器。查询命令为: SELECT server FROM V$SESSION WHERE audsid=USERENV(SESSIONID); .2.4.5 并行数据库系统配置针对一个Oracle实例访问的数据库针对两个或两个以上数据库实例(效力器)访问同一个数据库Oracle并行效力器(oracle parallel
25、 server,OPS).3个独立的Oracle实例共享同一数据库文件 图 2.18 Oracle并行效力器 .并行效力器的益处可以添加数据库资源的数量或净值数量允许数据库为更多的用户处置更多的任务提供了一种对灾难进展恢复的手段可以根据执行的进程的类型对用户进展分组,并且大量占用CPU的用户可以留在与常规联机处置事务相分别的一个主机上.设计运用并行数据库时需求留意的问题可以运用不同的初始化参数配置在并行效力器数据库上运转的各种实例。用户可以把系统设计为使器具有一个或多个富余实例的并行效力器,以便在主实例不可获取时仍能支持本人的一切用户。假设硬件可以支持足够的节点,可以在一样的数据库上运用并行效
26、力器的伸缩特性及缺点恢复才干。.设计运用并行数据库时需求留意的问题在设计多实例数据库时,在伸缩特性及缺点恢复才干这两个功能之间进展明确的区分是非常重要的。 需求做好预备修正单实例数据库运用的初始化参数文件中的参数,以使并行效力器运用的多个实例可以胜利地相互作用。 .在并行方式下启动一个实例的两种方法需求将初始化文件中的parallel server设为true。经过在SQL*Plus的STARTUP命令中包括PARALLEL或SHARED关键字。在数据库管理器总控台的实例管理屏上运用SHARED单项选择按钮。 .2.4.6 分布式数据库系统 分布式数据库系统是作为一个单独的数据库但位于不同场所
27、的系统。这些场所可以在任何地方,可以在紧邻的办公室,也可以在地球的另一端。在一个由不同节点衔接起来的网络环境中,分布式数据库担当一个单独的系统。在一个分布式环境中,不同效力器(主机)上的数据库彼此共享数据。每个效力器既能在物理上分别,又可以坚持彼此间的逻辑关系。 .分布式数据库系统 图 2.19 分布式数据库系统 .分布式事务会的益处其他效力器上的数据库可以被更新,并且这些事务可以与其他事务组成一个逻辑单元数据库对2PC的运用 .接纳的数据库的3种呼应方式预备好已预备好进展更新只读没有预备的必要退出子处置不能执行更新.2.4.7 Oracle Webserver系统 随着网络技术的迅猛开展,数据库技术也面临着一场深化的变革 Oracle Web Server相当于一个简单恳求传送者的角色 Oracle Web Server支持用内建的过程创建HTML文档 .Oracle Web Server的根本组成及功能 Web监听器在Oracle主机上的HTTP引擎,它接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年人力资源招聘实务试题及答案
- 妇幼保健员考试权威指导试题及答案2025
- 精准用户定位的方法试题及答案
- 五大绩效管理方法解析试题及答案
- 茶艺师的市场营销策略与试题及答案
- 二零二五年度房产抵押合同:新型房产抵押贷款协议
- 二零二五年度危重病人治疗免责及国际医疗合作协议
- 二零二五年度智慧城市股权分配与合作建设协议
- 2024人力资源管理师报名流程考题试题及答案
- 二零二五年度水电安装与建筑节能检测承包合同
- 水库引水隧洞出口边仰坡脚手架搭设专项施工方案
- 2024-2030年中国大气预浓缩仪市场营销策略建议与未来趋势预测研究报告
- 2024年(学习强国)思想政治理论知识考试题库与答案
- 高中化学3.2醇酚讲义无答案新人教版选择性必修3
- SH/T 3533-2024 石油化工给水排水管道工程施工及验收规范(正式版)
- 新时代黄河流域高质量发展导论智慧树知到期末考试答案章节答案2024年聊城大学
- 2024年成都香城投资集团有限公司招聘笔试冲刺题(带答案解析)
- 2023版《思想道德与法治》(绪论-第一章)绪论 担当复兴大任 成就时代新人;第一章 领悟人生真谛 把握人生方向 第3讲 创造有意义的人生
- 心衰的治疗指南PPT2024
- 2024年LED手电筒行业技术趋势分析
- 医疗器械经营与药品经营的区别
评论
0/150
提交评论