Oracle数据库结构 - ch4_第1页
Oracle数据库结构 - ch4_第2页
Oracle数据库结构 - ch4_第3页
Oracle数据库结构 - ch4_第4页
Oracle数据库结构 - ch4_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四讲第四讲 Oracle数据库结构数据库结构 主要内容主要内容n逻辑存储结构逻辑存储结构u数据块数据块(Data Block)、u区区(Extent)、u段段(Segment)u表空间表空间(Tablespace) n物理存储结构物理存储结构u控制文件控制文件u数据文件数据文件u联机重做日志文件联机重做日志文件u归档重做日志文件归档重做日志文件Oracle数据库结构数据库结构n数据库结构是指存储数据的方式。数据库结构是指存储数据的方式。u逻辑存储结构(逻辑数据库)逻辑存储结构(逻辑数据库) 用于描述在用于描述在Oracle内部组织和管理内部组织和管理数据的方式。数据的方式。u物理存储结构(物

2、理数据库)物理存储结构(物理数据库) 定义了定义了Oracle外部,即操作系统中外部,即操作系统中组织和管理数据组织和管理数据的方式。的方式。逻辑存储结构逻辑存储结构n逻辑数据库空间按照由小到大的顺序逻辑数据库空间按照由小到大的顺序分别为数据块分别为数据块(Data Block)、区、区(Extent)、段、段(Segment)和表空间和表空间(Tablespace) 。n逻辑数据库是由若干表空间组成,每逻辑数据库是由若干表空间组成,每个表空间由若干个段组成,每个段由个表空间由若干个段组成,每个段由若干区组成,每个区是由若干个连续若干区组成,每个区是由若干个连续的数据块组成,每个块是由若干字节

3、的数据块组成,每个块是由若干字节组成。组成。逻辑存储结构逻辑存储结构数据块数据块(Data Block)nOracle是以数据块为单位管理数据文件中是以数据块为单位管理数据文件中的存储空间。的存储空间。n数据块是数据库读写数据的数据块是数据库读写数据的最小最小I/O单位单位。n块大小由初始化参数块大小由初始化参数DB_BLOCK_SIZE指指定。定。n块空间管理方式:块空间管理方式:u自动自动u手工手工数据块数据块(Data Block)n如果在创建如果在创建表空间时使用的是本地管理方表空间时使用的是本地管理方式式,并且将段的存储空间管理方式设置为,并且将段的存储空间管理方式设置为AUTO,O

4、racle将自动管理表空间中块的将自动管理表空间中块的空闲存储空间。空闲存储空间。n手工是设置手工是设置 PCTFREE和和 PCTUSED来定来定义。义。PCTFREE参数用于指定块中参数用于指定块中必须保留必须保留的最小空闲空间比例的最小空闲空间比例,小于该比例块将标,小于该比例块将标记为不可用。记为不可用。PCTUSED参数用于指定块中参数用于指定块中已经使用的存储空间已经使用的存储空间降低到指定的百分比降低到指定的百分比时,这个块才被重新标记为可用状态。时,这个块才被重新标记为可用状态。 区(区(Extent)n区是由区是由物理上连续存放的块物理上连续存放的块所构成的所构成的Oracl

5、e逻辑存储单位,由一个或多个区构成段。逻辑存储单位,由一个或多个区构成段。n区是区是Oracle为为段分配空间的最小单位段分配空间的最小单位。n创建带有实际存储结构的数据库对象时,自创建带有实际存储结构的数据库对象时,自动分配若干个区作为对象的初始存储空间。动分配若干个区作为对象的初始存储空间。 n初始区的大小、后续区的大小和增加方式通初始区的大小、后续区的大小和增加方式通过在过在DEFAULT STORAGE子句设置参数子句设置参数INITIAL、NEXT和和 PCTINCREASE来指定。来指定。 段段(Segment)n段由段由一个或多个区一个或多个区组成组成,是独立的逻辑存储结构,是独

6、立的逻辑存储结构,而不是存储空间分配的单位。而不是存储空间分配的单位。n段只属于一个特定的数据库对象段只属于一个特定的数据库对象。每当创建具。每当创建具有独立段的数据库对象时,有独立段的数据库对象时,Oracle将为它创建将为它创建一个段,一个段,段中至少有一个初始区段中至少有一个初始区。n根据数据库对象的不同也有不同类型的段:根据数据库对象的不同也有不同类型的段:u数据段:数据段:存放存放所有表的数据所有表的数据。u索引段:索引段:保存的是索引中的保存的是索引中的索引条目索引条目。u临时段:用来保存临时段:用来保存SQL语句分析和执行的中间结果。语句分析和执行的中间结果。u回滚段:回滚段:记

7、录每个事务修改数据时数据的旧值,不记录每个事务修改数据时数据的旧值,不管这个事务是否提交。管这个事务是否提交。表空间(表空间(Tablespace)n在逻辑上,在逻辑上,Oracle数据库是由一个或多个数据库是由一个或多个表空间组成的,表空间组成的,表空间表空间被划分为一个个被划分为一个个独独立的段立的段,数据库中创建的所有对象都必须保数据库中创建的所有对象都必须保存在指定的表空间中。存在指定的表空间中。n在物理上,一个在物理上,一个表空间表空间对应于操作系统中对应于操作系统中的的一个或多个数据文件一个或多个数据文件。一个对象的数据。一个对象的数据存储在表空间的任意一个数据文件中,也存储在表空

8、间的任意一个数据文件中,也可将同一个对象的数据分布在表空间的多可将同一个对象的数据分布在表空间的多个数据文件中,还可以将同一个对象分布个数据文件中,还可以将同一个对象分布在多个表空间中(如对表进行分区后的分在多个表空间中(如对表进行分区后的分区表)。区表)。表空间与数据文件的关系表空间与数据文件的关系一个表空间可以包含多个数据文一个表空间可以包含多个数据文件,但是一个数据文件只能属于件,但是一个数据文件只能属于一个表空间。一个表空间。表空间的分类表空间的分类1.用户定义表空间用户定义表空间 n用于存储用户数据的普通表空间,它是根据用于存储用户数据的普通表空间,它是根据实际应用由用户自己来建立的

9、。实际应用由用户自己来建立的。 2.SYSTEM表空间表空间 n创建数据库时,自动创建创建数据库时,自动创建SYSTEM表空间。表空间。SYSTEM表空间中存储数据库数据字典、所表空间中存储数据库数据字典、所有有PL/SQL程序的源代码和解析代码和数据程序的源代码和解析代码和数据库对象(如视图、对象类型说明、同义词和库对象(如视图、对象类型说明、同义词和序列)的定义。序列)的定义。表空间的分类表空间的分类3. 撤消表空间撤消表空间n用来在自动撤销管理方式下存储撤销信息的用来在自动撤销管理方式下存储撤销信息的专用表空间。在撤销表空间中只能建立撤销专用表空间。在撤销表空间中只能建立撤销段(回滚段)

10、。任何数据库用户都不能在撤段(回滚段)。任何数据库用户都不能在撤销表空间中创建数据库对象。销表空间中创建数据库对象。4.临时表空间临时表空间 n运行过程中要使用临时空间来保存运行过程中要使用临时空间来保存SQL语句语句执行过程中产生的中间数据。执行过程中产生的中间数据。物理数据库结构物理数据库结构nOracle物理数据库是从操作系统的文件级来物理数据库是从操作系统的文件级来描述数据库。描述数据库。nOracle数据库是由若干个物理文件组成,每数据库是由若干个物理文件组成,每个物理文件由若干个操作系统物理块组成。个物理文件由若干个操作系统物理块组成。n四种类型的操作系统文件组成:四种类型的操作系

11、统文件组成:u控制文件控制文件u数据文件数据文件u联机重做日志文件联机重做日志文件u归档重做日志文件归档重做日志文件 控制文件控制文件(Control File) n控制文件是一个记录数据库结构的二进制控制文件是一个记录数据库结构的二进制文件,在其中如下重要信息:文件,在其中如下重要信息:u数据库名,数据库建立的时间;数据库名,数据库建立的时间;u数据文件名称、位置、联机数据文件名称、位置、联机/脱机状态信息;脱机状态信息;u重做日志文件的名称和路径;重做日志文件的名称和路径;u表空间名称;表空间名称; u当前日志序列号,日志历史记录;当前日志序列号,日志历史记录;u归档日志信息;归档日志信息

12、;u最近检查点信息;最近检查点信息; u备份信息等。备份信息等。控制文件控制文件(Control File)n实例在加载数据库时读取控制文件,以找到实例在加载数据库时读取控制文件,以找到自己所需的操作系统文件。自己所需的操作系统文件。n控制文件必须在整个数据库打开期间始终保控制文件必须在整个数据库打开期间始终保持可用状态。持可用状态。 n每个数据库必须至少拥有一个控制文件。一每个数据库必须至少拥有一个控制文件。一个数据库也可同时拥有多个相同的控制文件,个数据库也可同时拥有多个相同的控制文件,但是一个控制文件只能属于一个数据库。但是一个控制文件只能属于一个数据库。n控制文件信息可以从控制文件信息

13、可以从V$Controlfile中查询中查询获得获得 。数据文件数据文件(Data File)n数据文件数据文件是存储数据库数据的操作系统文是存储数据库数据的操作系统文件。件。nOracle通过为表空间创建数据文件来从硬通过为表空间创建数据文件来从硬盘中获取物理存储空间。盘中获取物理存储空间。n一个一个数据库对象的数据数据库对象的数据可以全部保存在一可以全部保存在一个个数据文件数据文件中,也可以分布在同一个表空中,也可以分布在同一个表空间的多个数据文件中。间的多个数据文件中。n组成表空间的数据文件的大小决定了表空组成表空间的数据文件的大小决定了表空间的大小间的大小 。 数据文件数据文件(Dat

14、a File)n数据文件的查看:数据文件的查看:SQL select name from v$datafile;NAME-/u05/dbf/PROD/system01.dbf/u06/dbf/PROD/temp01.dbf/u04/dbf/PROD/users01.dbf/u09/dbf/PROD/rbs01.dbf/u06/dbf/PROD/applsys_indx01.dbf/u05/dbf/PROD/applsys_data01.dbf联机重做日志文件联机重做日志文件n 重做日志文件中以重做日志文件中以重做记录的形式重做记录的形式记录了记录了用户对数据库用户对数据库进行的所有进行的所有修

15、改操作。修改操作。n重做记录由一组变更向量组成,每个变更重做记录由一组变更向量组成,每个变更向量中记录了事务对数据库中某个数据块向量中记录了事务对数据库中某个数据块所做的修改。所做的修改。n利用重做记录,在系统利用重做记录,在系统发生故障而导致数发生故障而导致数据库崩溃据库崩溃时,时,Oracle可以恢复丢失的数据可以恢复丢失的数据修改操作信息。修改操作信息。1、写入、写入联机重做日志文件联机重做日志文件nLGWR以循环方式写入联机重做日志。以循环方式写入联机重做日志。日志序日志序列号列号1、写入、写入联机重做日志文件联机重做日志文件n当一个事务被提交时,当一个事务被提交时,LGWR进程把与该

16、进程把与该事务相关的所有重做记录全部写入当前重事务相关的所有重做记录全部写入当前重做日志文件中,同时生成一个系统变更号做日志文件中,同时生成一个系统变更号(System Change Number, SCN)。)。n只有当某个事务所产生的重做记录全部被只有当某个事务所产生的重做记录全部被写入重做日志文件之后,写入重做日志文件之后,Oracle才认为这才认为这个事务已经成功提交。个事务已经成功提交。nSCN是数据库状态是否一致的标志。是数据库状态是否一致的标志。2、日志切换和日志序列号、日志切换和日志序列号n日志切换是指日志切换是指LGWR进程结束当前重做日进程结束当前重做日志文件的使用,开始写

17、入下一个重做日志志文件的使用,开始写入下一个重做日志文件的时刻。文件的时刻。n每当发生每当发生日志切换日志切换时,时,Oracle将会生成一将会生成一个新的个新的日志序列号日志序列号,并将这个号码分配给,并将这个号码分配给即将开始使用的重做日志文件。日志序列即将开始使用的重做日志文件。日志序列号不会重复号不会重复,在归档时一同保存。在归档时一同保存。n日志序列号表示日志文件使用的先后。日志序列号表示日志文件使用的先后。3、多路重做日志文件、多路重做日志文件n多多路重做日志文件是指同时保存一个重做路重做日志文件是指同时保存一个重做日志文件的多个镜像文件,防止被破坏。日志文件的多个镜像文件,防止被

18、破坏。这些完全相同的重做日志文件构成一个重这些完全相同的重做日志文件构成一个重做做日志文件组日志文件组,组中每个重做日志文件称,组中每个重做日志文件称为一个为一个日志组成员日志组成员。n工作原理:工作原理:归档重做日志文件归档重做日志文件n归档归档是指在重做日志文件被覆盖之前,是指在重做日志文件被覆盖之前,Oracle将已经写满的重做日志文件复制到指将已经写满的重做日志文件复制到指定的位置以文件形式存放,这类文件称为归定的位置以文件形式存放,这类文件称为归档重做日志文件。档重做日志文件。n归档重做日志文件主要用于进行数据库归档重做日志文件主要用于进行数据库恢复恢复和更新备份数据库和更新备份数据库,同时借用,同时借用LogMiner工工具可以得到数据库操作的历史信息。具可以得到数据库操作的历史信息。 n只有数据库处于归档模式中,才会执行归档

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论