oracle逻辑层级详解(表空间、段、区、数据块)

文章目录


逻辑结构的层次如下所述:

·oracle数据库至少包含一个表空间。

·表空间包含一个或多个段。(segment)

·段由区组成。(extends)

·区由逻辑块组成。(block)

·块是读写操作的最小单位。

oracle数据库体系结构包括构成数据库的逻辑结构和物理结构。

·物理结构包括构成数据库的控制文件、联机重做日志文件和数据文件。

逻辑结构包括表空间、段、区和数据块。

oracle服务器通过表空间和逻辑存储结构(包括段、区和数据块),能够实现磁盘空间使用的小粒度控制。

表空间:

oracle数据库内的数据存储在表空间内。

oracle数据库可以从逻辑上分组到称为表空间的更小的逻辑空间区。

一个表空间在某一时刻只能属于一个数据库。

每个表空间由一个或多个称为数据文件的操作系统文件组成。

表空间可能包含一个或多个段。

表空间可以在数据库运行时联机。

除了SYSTEM表空间或者有活动还原段的表空间,可将其它表空间置于脱机状态而不会影响数据库运行。

表空间可以在可读写和只读状态之间切换。

数据文件(不是逻辑结构):

·oracle数据库内的每个表空间由一个或者多个称为数据文件的文件组成。这些物理结构与在其上运行oracle服务器的操作系统是一致的。

·一个数据文件只能属于一个表空间。

·通过分配指定数量的磁盘空间加上少量的开销,oracle服务器创建表空间数据文件。

·数据文件创建后,数据库管理员可以更改其大小或者指定数据库文件应随着表空间内对象的增长而动态增长。

段:

·段是在表空间中为特定逻辑存储结构分配的空间。

·表空间可以由一个或多个段组成。

·段无法跨越表空间;但是段可以跨越属于同一表空间的多个数据文件。

·每个段由一个或多个区组成。

区:

按区向段分配空间。

·一个或多个区组成一个段。

当段创建后,它至少由一个区组成。

随着段的增长,需要向该段添加区。

DBA可以手动向段添加区。

·一个区就是一组连续的oracle块。

·区无法跨越数据文件,所以,它必须存在于一个数据文件内。

数据块:

oracle服务器以oracle块或者数据块为单位来管理数据文件中的存储空间。

·oracle数据库内的数据存储在数据块内,数据块为最精细的粒度等级。

·oracle数据块是oracle服务器能够分配、读或写的最小存储单元。

·一个数据块对应一个或多个从现有数据文件中分配的操作系统块。

·每个oracle数据库的标准数据块大小是在创建数据库时由初始化参数DB_BLOCK_SIZE指定的。

·数据块大小应当是操作系统块大小的整数倍以避免比必要的I/O。

·数据块大小最大值取决于操作系统。

相关推荐
oradh6 小时前
Oracle闪回技术操作总结
数据库·oracle·oracle闪回技术操作总结·oracle闪回·flashback技术
ltl7 小时前
RocksDB 并发 Compaction 与 Rate Limiter
数据库
闻道且行之8 小时前
图片处理助手|泊松融合原理 + C++ 工程实现,seamlessClone 三模式一次讲透
数据库·c++·人工智能·opencv
夏炳辉.9 小时前
PostgreSQL 高可用集群核心配置参数全解:从原生流复制到 Patroni 企业级方案
数据库·postgresql
努力的小雨10 小时前
KES 开启 SSL 前,证书、端口和客户端要一起验
数据库
DevOps老兵10 小时前
AI全栈知识07:向量数据库 - Milvus/Chroma实战
数据库·ai·milvus
这个DBA有点耶10 小时前
当数据库从“存储”走向“决策”:金仓数据库的融合架构之路
数据库·架构·aigc
smilejingwei11 小时前
Trae+SQLazy 实践 SQL 国产化移植:Oracle => 达梦
数据库·sql·oracle
意疏12 小时前
2026年远控软件安全横评:六款主流工具逐项核查——官方文档、一手实测与安全事件,全摊开
大数据·前端·数据库
名不经传的养虾人12 小时前
从0到1:企业级AI项目迭代日记 Vol.90|Agent变快了,Judge定下来了
大数据·数据库·人工智能·ai编程·企业ai