Oracle数据库基本原理梳理

上传人:re****.1 文档编号:470311131 上传时间:2023-06-03 格式:DOCX 页数:22 大小:270.77KB
返回 下载 相关 举报
Oracle数据库基本原理梳理_第1页
第1页 / 共22页
Oracle数据库基本原理梳理_第2页
第2页 / 共22页
Oracle数据库基本原理梳理_第3页
第3页 / 共22页
Oracle数据库基本原理梳理_第4页
第4页 / 共22页
Oracle数据库基本原理梳理_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《Oracle数据库基本原理梳理》由会员分享,可在线阅读,更多相关《Oracle数据库基本原理梳理(22页珍藏版)》请在金锄头文库上搜索。

1、数据库基本原理目录概述.41逻辑结构51.1 存储关系61.1.1 存储结构61.1.2 如何存储表数据 71.2 表空间(tablespace) 81.2.1 常用表空间 81.2.2 表空间和数据文件的关系 91.3 段(Segment) 101.4 数据区(Extent) 111.5 数据块(Data Blocks 112物理结构122.1 数据文件132.2 日志文件142.3 控制文件152.4 参数文件153 实例(instance) 164内存164.1SGA161.1.1 数据库高速缓冲区(Database Buffer Cache 171.1.2 重做日志缓冲区(Redo L

2、og Buffer 181.1.3 共享池(Shared Pool 181.1.4 大池(Large Pool 181.1.5 JAVA 池(Java Pool 191.1.6 流池(Streams Pool) 194.2 PGA194.2.1 、Private SQL Area(私有 SQL区域)204.2.2 SQL Work Area s(工作区域) 204.3 PGA与 SGA的区别:205 oracle后台进程215.1 DBWn散据库写入进程)215.2 SMON (系统监控、实例监控进程) 225.3 PMON (进程#理)225.4 CKPT(检查点进程) 22概述什么是ora

3、cle?平常所说的 Oracle或Oracle数据库指的 是Oracle数据库管理系统.。Oracle数据库管理系统是管理数据 库访问的计算机软件,它由Oracle数据库和Oracle实例构成。 Oracle系统体系结构由三部分组成:逻辑结构、物理结构和实 例。oracle服务器是一个数据库管理系统,它包括一个oracle实例(动态)和一个oracle数据库(静态)。oracle实例是一个运行 的概念(如操作系统的进程),提供了一种访问oracle数据库的方式,始终打开一个,弁且只能打开一个oracle数据库,oracle实例有SGA和一些后台服务进程组成,在后台服务进程当中,DBWn (数据

4、库写入进程)、SMON (系统监控、实例监控进程)PMON (进程清理)、 CKPT (检查点进程)LGWR (日志写进 程)是必备的后台进程。1逻辑结构Oracle的逻辑结构是一种层次结构。主要由:表空间、 段、区和数据块等概念组成。逻辑结构是面向用户的,用户使 用Oracle开发应用程序使用的就是逻辑结构。数据库存储层次 结构及其构成关系,结构对象也从数据块到表空间形成了不同层 次的粒度关系。1.1 存储关系Oracle数据库逻辑上是由一个或多个表空间组成的,表空 间物理上是由一个或多个数据文件组成的;而在逻辑上表空间 又是由一个或多个段组成的。在Oracle数据库中,通过为每种不同的数据

5、对象分配不同的段,来保存数据。例如 EMP表的所 有数据会存放在EMP段中。在Oracle数据库中,段是由一个 或多个区组成的,而区又是由连续存储的数据块所组成的。块则是数据库的I/O最小的单位。1.1.1 存储结构逻辑物理Oracle数据作数据库可划分为被称为表空间的逻辑存储单元。每一个表 空间可以包含很多的 Oracle逻辑数据块。DB_BLOCK_SIZ参数 指定了逻辑块的大小。逻辑块的大小范围为2 KB至32 KB,默认大小为8 KR特定数目的相邻逻辑块构成了一个区。为特定 逻辑结构分配 的一组区构成了一个段。 Oracle数据块是逻辑 I/O的最小单位。1.1.2 如何存储表数据创建

6、表时,就会创建段来保存表数据。表空间包含一组 段。从逻辑上讲,表包含由列值组成的行。行最终将以行片段 的形式存储在数据库块中。之所以称为行片段,是因为某些情 况下,不可以在一个位置存储一整行。当插入行由于太长而不 适合单个块时,或者由于更新而导致现有行大小超出了行的当前空间时,就会发生这种情况。如可停鹿夫t7程1.2 表空间(tablespace )Oracle数据库(tablespace)是由若干个表空间构成的。任 何数据库对象在存储时都必须存储在某个表空间中O表空间对 应于若干个磁盘文件,即表空间是由一个或多个磁盘文件构成的。表空间相当于操作系统中的文件夹,也是数据库逻辑结构 与物理文件之

7、间的一个映 射。每个数据库至少有一个表空间, 表空间的大小等于所有从属于它的数据文件大小的总和。1.2.1 常用表空间(1)系统表空间:存放系统数据,系统表空间在数据库创建 时自动创建。表空间名称为 SYSTEM存放数据字典和视图以及 数据库结构等重要系统数据信息,在运行时如果SYSTEM空间不足,对数据库影响会比较大,虽然在系统运行过程中可以通 过命令扩充空间,但还是会影响数据库的性能,因此有必要在 创建数据库时适当的把数据文件设置大一些。(2) TMEP表空间:临时表空间,安装数据库时创建,可以 在运行时通过命令增大临时表空间。临时表空间的重要作用是 数据排序。比如当用户执行了诸如Orde

8、r by等命令后,服务器需要对所选取数据进行排序,如果数据很大,内存的排序区可能装不下太大数据,就需要把一些中间的排序结果写在硬盘的临时表空间中。(3)用户表自定义空间:用户可以通过CREATE TABLESPACE命令创建表空间。1.2.2表空间和数据文件的关系数据库衰空间敷据文件Oracle数据库由一个或多个称为表空间的逻辑存储单元组 成,表空间作为一个整体存储数据库中的所有数据,弁且一个 表空间只能属于一个数据库。数据库的大小是该数据库中所表空间大小总和。从物理讲,Oracle数据库内的每个表空间由一个或多数据 文件 组成,弁且一个数据文件只能属于一个表空间。表空间大是所有数据文件大小的

9、总和。这些数据文件与Oracle运行所在的操作系统的文件有一样的物理结构。数据库的所有数据都存储在数据文件中,数据库的每个表 空间都由这些数据文件组 成。例如,最简单的 Oracle数据库只 有一个表空间和一个数据文件。1.3 段(Segment )段是由多个数据区构成的,它是为特定的数据库对象(如表段、索引段、回滚段、临时段) 分配的一系列数据区。段内包含 的数据区可以不连续,并且可以跨越多个文件。使用段的目的 是用来保存特定对象。一个Oracle数据库有4种类型的段:数据段:数据段也称为表段,它包含数据并且与表和簇相 关。当创建一个表时,系统自动创建一个以该表的名字命名的 数据段。索引段:

10、包含了用于提高系统性能的索引。一旦建立索 引,系统自动创建一个以该索引的名字命名的索引段。回滚段:包含了回滚信息,并在数据库恢复期间使用,以 便为数据库提供读入一致性和回滚未提交的事务,即用来回滚 事务的数据空间。当一个事务开始处理时,系统为之分配回滚 段,回滚段可以动态创建和撤销。系统有个默认的回滚段,其 管理方式既可以是自动的,也可以是手工的。临时段:它是Oracle在运行过程中自行创建的段。当一个 SQL语句需要临时工作区时,由 Oracle建立临时段。一旦语句执 行完毕,临时段的区间便退回给系统。1.4 数据区(Extent )数据区是一组连续的数据块。当一个表、回滚段或临时段 创建或

11、需要附加空间时,系统总是为之分配一个新的数据区。 一个数据区不能跨越多个文件,因为它包含连续的数据块。使 用区的目的是用来保存特定数据类型的数据,也是表中数据增 长的基本单位。在 Oracle数据库中,区是 Oracle数据库中创建 对象时的最小分配单元,分配空间就是以数据区为单位的。一个 Oracle对象包含至少一个数据区。设置一个表或索引的存储参 数包含设置它的数据区大小。1.5 数据块(Data Blocks )数据块是Oracle最小的存储单位,Oracle数据存放在“块” 中。一个块占用一定的磁盘空间。特别注意的是,这里的“块”是Oracle的“数据块”,不是操作系统的“块”。Ora

12、cle每次请求数据的时候,都是以块为单位。也就是说,Oracle每次请求的数据是块的整数倍。如果Oracle请求的数据量不到一块,Oracle也会读取整个块。所以说,“块”是Oracle读写数据的最小单位或者最基本的单位。块的标准大小由初始化参数 DB_BLOCK_SIZ指定。具有标 准大小的块称为标准块(Standard Block)。块的大小和标准块的 大小不同的块叫非标准块(Nonstandard Block)。一个数据块的结构如下图所示:HeaderFree spaceData其中,Header表示数据块头,记录了一些控制信息,帮助Oracle数据库定位这个块,同时该部分还记录着块与块

13、之间的串联信息。Free Spac时旨的是当前处于空I状态的空间。 Data则 表示已经写入数据的空间,数据存放的方式是自底往上。2物理结构Oracle物理结构由多种物理文件组成。2.1 数据文件每一个ORACL嗷据库有一个或多个物理的数据文件 (data file) o 一个数据库的数据文件包含全部数据库数据。逻辑数据库 结构(如表、索引)的数据物理地存储在数据库的数据文件中。数 据文件有下列特征:(1) 一个数据文件仅与一个数据库联系。(2) 一旦建立,数据文件不能改变大小.(3) 一个表空间(数据库存储的逻辑单位)由一个或多个数据 文件组成。(4) 数据文件中的数据在需要时可以读取弁存储

14、在ORACLE存储区中。2.2 日志文件每一个数据库有两个或多个日志文件(redo log file)的组, 每一个日志文件组用于收集数据库日志。日志的主要功能是记 录对数据所作的修改,所以对数据库作的全部修改是记录在日 志中。在出现故障时,如果不能将修改数据永久地写入数据文 件,则可利用日志得到该修改,所以从不会丢失已有操作成 果。日志文件主要是保护数据库以防止故障。为了防止日志文 件本身的故障,ORACLE许镜象日志(mirrored redo log),以致 可在不同磁盘上维护两个或多个日志副本。日志文件中的信息仅在系统故障或介质故障恢复数据库时 使用,这些故障阻止将数据库数据写入到数据

15、库的数据文件。 然而任何丢失的数据在下一次数据库打开时,ORACLES动地应用日志文件中的信息来恢复数据库数据文件。Oralce两种日志文件类型:联机日志文件 这是Oracle用来循环记录数据库改变的操作 系统文件归档日志文件 这是指为避免联机日志文件重写时丢失重复 数据而对联机日志文件所做的备份2.3 控制文件每一 ORACL徵据库有一个控制文件(control file),它记录数 据库的物理结构,包含下列信息类型:(1)数据库名;(2)数据库数据文件和日志文件的名字和位置;(3)数据库建立日期。为了安全起见,允许控制文件被镜像。每一次ORACL嗷据库的实例启动时,它的控制文件用于标 识数据库和日志文件,当着手数据库操作时它们必须被打开。当数据库的物理组成更改时,ORACLE动更改该数据库的控制文件。数据恢复时,也要使用控制文件。2.4 参数文件除了构成Oracle数据库物理结构的三类主要文件外,Oracle数据库还具有另外一种重要的文件:参数文件。参数文件记录了 Oracle数据库的基本

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

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