[精选]Oracle数据库结构 - ch4

上传人:我**** 文档编号:183794605 上传时间:2021-06-15 格式:PPTX 页数:28 大小:281.27KB
返回 下载 相关 举报
[精选]Oracle数据库结构 - ch4_第1页
第1页 / 共28页
[精选]Oracle数据库结构 - ch4_第2页
第2页 / 共28页
[精选]Oracle数据库结构 - ch4_第3页
第3页 / 共28页
[精选]Oracle数据库结构 - ch4_第4页
第4页 / 共28页
[精选]Oracle数据库结构 - ch4_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《[精选]Oracle数据库结构 - ch4》由会员分享,可在线阅读,更多相关《[精选]Oracle数据库结构 - ch4(28页珍藏版)》请在金锄头文库上搜索。

1、第四讲 Oracle数据库结构,主要内容,逻辑存储结构 数据块(Data Block)、 区(Extent)、 段(Segment) 表空间(Tablespace) 物理存储结构 控制文件 数据文件 联机重做日志文件 归档重做日志文件,Oracle数据库结构,数据库结构是指存储数据的方式。 逻辑存储结构(逻辑数据库) 用于描述在Oracle内部组织和管理数据的方式。 物理存储结构(物理数据库) 定义了Oracle外部,即操作系统中组织和管理数据的方式。,逻辑存储结构,逻辑数据库空间按照由小到大的顺序分别为数据块(Data Block)、区(Extent)、段(Segment)和表空间(Tabl

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

3、CTFREE参数用于指定块中必须保留的最小空闲空间比例,小于该比例块将标记为不可用。PCTUSED参数用于指定块中已经使用的存储空间降低到指定的百分比时,这个块才被重新标记为可用状态。,区(Extent),区是由物理上连续存放的块所构成的Oracle逻辑存储单位,由一个或多个区构成段。 区是Oracle为段分配空间的最小单位。 创建带有实际存储结构的数据库对象时,自动分配若干个区作为对象的初始存储空间。 初始区的大小、后续区的大小和增加方式通过在DEFAULT STORAGE子句设置参数INITIAL、NEXT和 PCTINCREASE来指定。,段(Segment),段由一个或多个区组成,是独

4、立的逻辑存储结构,而不是存储空间分配的单位。 段只属于一个特定的数据库对象。每当创建具有独立段的数据库对象时,Oracle将为它创建一个段,段中至少有一个初始区。 根据数据库对象的不同也有不同类型的段: 数据段:存放所有表的数据。 索引段:保存的是索引中的索引条目。 临时段:用来保存SQL语句分析和执行的中间结果。 回滚段:记录每个事务修改数据时数据的旧值,不管这个事务是否提交。,表空间(Tablespace),在逻辑上,Oracle数据库是由一个或多个表空间组成的,表空间被划分为一个个独立的段,数据库中创建的所有对象都必须保存在指定的表空间中。 在物理上,一个表空间对应于操作系统中的一个或多

5、个数据文件。一个对象的数据存储在表空间的任意一个数据文件中,也可将同一个对象的数据分布在表空间的多个数据文件中,还可以将同一个对象分布在多个表空间中(如对表进行分区后的分区表)。,表空间与数据文件的关系,一个表空间可以包含多个数据文件,但是一个数据文件只能属于一个表空间。,表空间的分类,1.用户定义表空间 用于存储用户数据的普通表空间,它是根据实际应用由用户自己来建立的。 2.SYSTEM表空间 创建数据库时,自动创建SYSTEM表空间。SYSTEM表空间中存储数据库数据字典、所有PL/SQL程序的源代码和解析代码和数据库对象(如视图、对象类型说明、同义词和序列)的定义。,表空间的分类,3.

6、撤消表空间 用来在自动撤销管理方式下存储撤销信息的专用表空间。在撤销表空间中只能建立撤销段(回滚段)。任何数据库用户都不能在撤销表空间中创建数据库对象。 4.临时表空间 运行过程中要使用临时空间来保存SQL语句执行过程中产生的中间数据。,物理数据库结构,Oracle物理数据库是从操作系统的文件级来描述数据库。 Oracle数据库是由若干个物理文件组成,每个物理文件由若干个操作系统物理块组成。 四种类型的操作系统文件组成: 控制文件 数据文件 联机重做日志文件 归档重做日志文件,控制文件(Control File),控制文件是一个记录数据库结构的二进制文件,在其中如下重要信息: 数据库名,数据库

7、建立的时间; 数据文件名称、位置、联机/脱机状态信息; 重做日志文件的名称和路径; 表空间名称; 当前日志序列号,日志历史记录; 归档日志信息; 最近检查点信息; 备份信息等。,控制文件(Control File),实例在加载数据库时读取控制文件,以找到自己所需的操作系统文件。 控制文件必须在整个数据库打开期间始终保持可用状态。 每个数据库必须至少拥有一个控制文件。一个数据库也可同时拥有多个相同的控制文件,但是一个控制文件只能属于一个数据库。 控制文件信息可以从V$Controlfile中查询获得 。,数据文件(Data File),数据文件是存储数据库数据的操作系统文件。 Oracle通过为

8、表空间创建数据文件来从硬盘中获取物理存储空间。 一个数据库对象的数据可以全部保存在一个数据文件中,也可以分布在同一个表空间的多个数据文件中。 组成表空间的数据文件的大小决定了表空间的大小 。,数据文件(Data File),数据文件的查看: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

9、/applsys_data01.dbf,联机重做日志文件,重做日志文件中以重做记录的形式记录了用户对数据库进行的所有修改操作。 重做记录由一组变更向量组成,每个变更向量中记录了事务对数据库中某个数据块所做的修改。 利用重做记录,在系统发生故障而导致数据库崩溃时,Oracle可以恢复丢失的数据修改操作信息。,1、写入联机重做日志文件,LGWR以循环方式写入联机重做日志。,日志序列号,1、写入联机重做日志文件,当一个事务被提交时,LGWR进程把与该事务相关的所有重做记录全部写入当前重做日志文件中,同时生成一个系统变更号(System Change Number, SCN)。 只有当某个事务所产生的

10、重做记录全部被写入重做日志文件之后,Oracle才认为这个事务已经成功提交。 SCN是数据库状态是否一致的标志。,2、日志切换和日志序列号,日志切换是指LGWR进程结束当前重做日志文件的使用,开始写入下一个重做日志文件的时刻。 每当发生日志切换时,Oracle将会生成一个新的日志序列号,并将这个号码分配给即将开始使用的重做日志文件。日志序列号不会重复,在归档时一同保存。 日志序列号表示日志文件使用的先后。,3、多路重做日志文件,多路重做日志文件是指同时保存一个重做日志文件的多个镜像文件,防止被破坏。这些完全相同的重做日志文件构成一个重做日志文件组,组中每个重做日志文件称为一个日志组成员。 工作

11、原理:,归档重做日志文件,归档是指在重做日志文件被覆盖之前,Oracle将已经写满的重做日志文件复制到指定的位置以文件形式存放,这类文件称为归档重做日志文件。 归档重做日志文件主要用于进行数据库恢复和更新备份数据库,同时借用LogMiner工具可以得到数据库操作的历史信息。 只有数据库处于归档模式中,才会执行归档操作。归档操作可以由后台进程ARCn自动完成,或由管理员手工通过命令来完成。,1、归档过程,2、数据库的归档模式,数据库可以运行在归档模式或非归档模式下。数据库的归档模式将记录在控制文件中。 如果将数据库设置为非归档模式,将不会对重做日志文件进行归档操作。当发生日志切换时,LGWR进程直接写入下一个可用的联机重做日志文件,联机重做日志文件中原有的重做记录将被覆盖。,2、数据库的归档模式,数据库在归档模式下,LGWR进程在写入下一个重做日志文件之前,必须等待该联机重做日志文件完成归档,否则LGWR进程将被挂起,数据库也停止运行。 在归档重做日志文件中,记录了自从数据库置于归档模式后,用户对数据库所进行的所有修改操作。,演讲完毕,谢谢观看!,

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

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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