文档详情

第四章Oracle9i数据库的体系结构.ppt

发布:2017-04-25约7.14千字共28页下载文档
文本预览下载声明
大型数据库概论 Introduction of Large Database 第4章 Oracle9i数据库的体系结构;学习目标 1、掌握 Oracle9i数据库的逻辑结构。 2、掌握Oracle9i数据库的物理结构。 3、掌握Oracle9i实例 。;第4章 Oracle9i数据库的体系结构 ? Oracle9i数据库的体系结构体现为数据库的逻辑结构、物理结构和实例。逻辑结构包括表空间、段、区和数据块,物理结构包括初始化参数文件、数据文件、控制文件、重做日志文件等,而实例则是一组可以操作数据库的操作系统进程和内存区域。 4.1 Oracle9i数据库的逻辑结构:包括Oracle9i数据库的表空间、段、区和数据块。 4.1.1 表空间(Tablespace) 1.表空间的概念 一个Oracle9i数据库划分为一个或多个逻辑单位,该逻辑单位称为表空间。; ; 从物理结构上看,一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。任何数据库对象(如表、索引等)都被存储在一个表空间中,但可以存储在多个属于此表空间的数据文件中。 从逻辑结构上看,一个表空间由一个或多个段组成,一个段可以分散在不同的数据文件中,但不能分散在不同的表空间中。段中的空间是以区为单位分配的,一个段可以包含一个或多个区,区必须在一个数据文件中存在。区是由一系列连续的数据块组成,数据块可由一个或多个操作系统块组成,它是Oracle服务器分配、读写操作的最小空间单位。 ; 2.使用表空间的好处 n?将数据字典与用户数据分开,避免因字典对象和用户对象保存在同一数据文件中而产生I/O冲突。 n?将回滚数据与用户数据分开,避免由于硬盘损坏而导致永久性的数据丢失。 n? 将表空间的数据文件分散在不同的硬盘上,可以平均分布物理I/O操作。 n? 将某个表空间设置为脱机状态或联机状态,可以对数据库的一部分进行备份和恢复。 n? 将某个表空间设置为只读状态,可以将数据库的一部分设置为只读。 n??为某种特殊用途专门设置一个表空间(如临时表空间),可以优化表空间的使用效率。 ;3.表空间的分类 ⑴ 系统表空间(System Tablespace) 系统表空间是每个Oracle9i数据库所必须的,在创建数据库时自动创建且总是联机的,该表空间包含的数据文件称为系统数据文件。在系统表空间中存放的是诸如系统表空间名称、表空间所含数据文件等管理数据库自身所需的信息。 ⑵ 临时表空间(Temporary Tablespace) 临时表空间用于存放连接查询、索引、排序等操作时产生的临时数据。在一些访问繁忙的数据库中,可能存在多个临时表空间,例如Temp01、Temp02、Temp03等。 ; ⑶ 工具表空间(Tools Tablespace) 工具表空间用于保存数据库工具软件所需的数据库对象,大多数DBA都将支持工具运行所需的表放在该表空间中。 ⑷ 用户表空间(User Tablespace) 用户表空间用于存放用户的私有信息,一般是由用户建立,是DBA允许用户存放数据库对象的地方。 ⑹ 回滚表空间(Rollback Tablespace) 回滚表空间用于存放数据库操作的恢复信息,简称RBS。; 4.表空间的状态 表空间可以有联机和脱机两种状态。 ⑴ 联机表空间中的数据对于应用程序和数据库来说是可用的。如果试图使系统表空间处于脱机状态,Oracle9i会返回一个错误。 ⑵ 脱机表空间中的数据对于应用程序和数据库来说是不可用的,不允许用户访问。 4.1.2 段(Segment) 1.段的概念 段是由一个或多个区组成的逻辑存储单元,段中所有区大小的总和即是此段的大小。每个数据库对象可以一个段来存储数据。一个段只能从属于一个表空间,但它可以覆盖多个数据文件。 ; 2.段的分类:Oracle9i数据库常使用五种段:数据段、索引段、临时段、LOB段和回滚段。 ⑴ 数据段:如果一个数据库有很多的用户并发操作,那么该数据库中表的可伸缩性、可用性是非常重要的。 ⑵ 索引段:索引段中索引树存储了关键列的值,目的是可以根据指定的关键列值查找表中行的位置。若某个表有3个索引,则该表使用了3个不同的索引段。 ⑶ 临时段:当执行CREATE INDEX、SELECT DISTINCT、SELECT GROUP BY等命令时,Oracle服务器就会在内存中执行排序操作。当排序需要的空间超过了内存中可用空间时,Oracle服务器将自动从用户默认的临时空间中指派段进行排序,被
显示全部
相似文档