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。

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

相关推荐
xcLeigh19 小时前
IoTDB 数据导入全攻略:工具、自动加载与 Load SQL 详解
数据库·sql·工具·iotdb·数据导入·loadsql
清漠23321 小时前
win11“网络和Internet“中无“以太网“这个选项解决记录
服务器·网络·数据库
那个松鼠很眼熟w1 天前
3.Statement对象概述,以及Statement的弊端
数据库
山岚的运维笔记1 天前
SQL Server笔记 -- 第72章:隔离级别与锁定
数据库·笔记·后端·sql·microsoft·sqlserver
硅基动力AI1 天前
如何判断一个关键词值不值得做?
java·前端·数据库
新缸中之脑1 天前
从零实现AI代理的长期记忆
数据库·人工智能
清水白石0081 天前
Fixture 的力量:pytest fixture 如何重新定义测试数据管理
数据库·python·pytest
Rick19931 天前
如何保证数据库和Redis缓存一致性
数据库·redis·缓存
那个松鼠很眼熟w1 天前
2.获取数据库连接
数据库
_ziva_1 天前
5 分钟搭建 CSV 数据问答系统:LangChain + LLM 实战教程
jvm·数据库·oracle