基础知识

此处参考 胡珊老师
https://www.yuque.com/qinghou/bobplatform/glnmab

实例与数据库

实例是动态概念:一组Oracle后台进程以及在服务器中分配的共享内存区域
数据库是静态概念:基于磁盘的数据文件、 控制文件、 日志文件、 参数文件和归档日志文件等组成的物理
文件集合。

实例用于管理和控制数据库; 而数据库为实例提供数据。 一个数据库可以被多个实例装载和打开; 而一个实例在其生存期内只能装载和打开一个数据库。

启动Oracle数据库服务器实际上是在服务器的内存中创建一个Oracle实例, 然后用这个实例来访问和控制磁盘中的数据文件。 当用户连接到数据库时, 实际上连接的是数据库的实例, 然后由实例负责与数据库进行通信, 最后将处理结果返回给用户。

逻辑存储结构

Oracle - 图1

数据块

数据块(Data Block)是最小的逻辑单位,也是执行数据库输入输出操作的最小存储单位。表数据、 索引数据等都是存放在“Oracle数据块”中。

块头、 表目录、 行目录这三部分为头部信息区, 不存放数据, 存放整个块的引导信息。空余空间和行数据构成存储区,存放真正的数据记录。

Oracle - 图2

数据区

数据区(Extent也可称作数据扩展区) 由一个或多个连续的数据块构成。数据区是Oracle存储分配的最小单位,分配存储空间就是以数据区为单位的,也是表中数据增长的基本单位。
使用数据区的目的是用来保存特定数据类型的数据,一个Oracle对象至少包含一个数据区。 设置一个表或索引的存储参数包含设置它的数据区大小。

表空间

表空间(属逻辑存储结构)与数据文件(属物理存储结构)相对应,一个表空间由一个或多个数据文件组成,一个数据文件只属于一个表空间;Oracle数据的存储空间在逻辑上表现为表空间,而在物理上表现为数据文件。

分区

分区功能能够改善应用程序的性能、 可管理性和可用性。
分区技术主要包括表分区和索引分区。

表分区

范围分区

工具使用