Oracle之数据库逻辑结构基础讲解
来源:互联网 发布:自考和网络远程教育 编辑:程序博客网 时间:2024/06/05 23:45
数据库逻辑结构为数据块(Data Block)、数据扩展(Extent)、和段(Segment); 物理结构为数据文件。
Block是最精细的数据存储粒度,一个数据块相当于磁盘上一段连续的物理存储空间,oracle每次访问数据的单位是block。
Extent是为存储数据而分配的一组连续的block,只能在一个数据文件中。
Segment则是由一个或多个Extent。一张表可以看做是一个段,一个索引可以做作是一个段。查看段的分类select distinct segment_type from user_segments 。可以跨数据文件。
数据逻辑上存储表空间(Tablespace)中,而物理上则存储于属于表空间的数据文件(data file)中。
oracle数据库在逻辑上是由多个表间组成的。
表空间中存储的对象叫段,比如数据段,索引段,和回退段。
段由区组成,区是磁盘分配的最小单位。段的增大是通过增加区的个数来实现的。每个区的大小是数据块大小的整数倍,区的大小可以不相同;
数据块是数据库中最小的I/O单位,同时也是内存数据缓冲区的单位,及数据文件存储空间单位。块的大小由参数DB_BLOCK_SIZE设置,其值应设置为操作系统块大小的整数倍。
表空间:
表空间是Oracle数据库最大的逻辑结构,一个Oracle数据库在逻辑上由多个表空间组成,一个表空间只隶属于一个数据库。Oracle中有一个称为SYSTEM的表空间,这个表空间是在创建或安装数据库时自动创建的。主要用于存储系统的数据字典,过程,函数,触发器等;也可以存储用户的表,索引等。一个表空间可以有多数据文件,但是一个数据文件只能属于一个表空间。
一个表空间就是一片磁盘区域,他由一个或者多个磁盘文件组成,一个表空间可以容纳许多表、索引或者簇等。每个表空间有一个预制的磁盘区域称为初始区间(initial extent)用完这个区间后再用下一个,直到用完表空间,这时候需要对表空间进行扩展,增加数据文件或者扩大已经存在的数据文件
Oracle中的段可以分成4种类型:数据段、索引段、回滚段、临时段。
数据段用来存储用户的数据,每个表都有一个对应的回滚段,其名称和数据表的名字相同。索引段用来存储系统、用户的索引信息。回滚段用来存储用户数据修改前的值,回退段与事务是一对多的关系,一个事务只能使用一个回退段,而一个回退段可存放一个或多个事务的回退数据。临时段用于order by语句的排序以及一些汇总。
区:
区是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区存储于段中,它由连续的数据块组成。区的分配过程中,每次至分配5个区。
如果所剩的空闲空间不够5个区,就会出现错误:ORA-01653。
可以通过字典dba_tablespaces查询表空间中区的信息。
可以通过字典user_tables查询段中区的信息。
可以通过字典user_extents查询区的分配状况。
小结:
1.数据库有一个或多个表空间组成。
2.表空间有一个或多个数据文件组成。
3.段(TABLE、INDEX)有一个或多个区段组成。段在表空间中,但是可以包含这个表空间中多个数据文件中的数据。
4.区段是磁盘上一组逻辑连续的块。区段只在一个表空间中,而且总是在改表空间内的一个文件中。
5.块是数据库中最小的分配单元,也是数据库使用的最小I/O单元。
我们可以通过以下SQL语句分别查询表空间、段、区中区的分配信息
SQL>select * from dba_tablespaces;
SQL>select table_name, tablespace_name, min_extents, max_extents from user_tables;
SQL>select * from user_extents;
数据块
数据块是数据中中最小的数据组织单位与管理单位,是数据文件磁盘存储空间单位,也是数据库I/O 的最小单位,数据块大小由DB_BLOCK_SIZE参数决定,不同的oracle版本DB_BLOCK_SIZE的默认值是不同的。
- 顶
- 0
- 踩
0 0
- Oracle之数据库逻辑结构基础讲解
- ORACLE数据库学习之逻辑结构
- oracle 数据库逻辑结构
- oracle 数据库逻辑存储结构
- oracle数据库的逻辑结构
- 第六篇 再述oracle数据库体系结构 之二:逻辑结构
- 再述oracle数据库体系结构 之二:逻辑结构
- 第六篇 再述oracle数据库体系结构 之二:逻辑结构
- Oracle数据库物理结构与逻辑结构
- Oracle体系结构之逻辑结构
- Oracle 10的数据库逻辑结构
- Oracle数据库的逻辑存储结构
- Oracle学习笔记-数据库逻辑结构
- Oracle数据库的逻辑结构未完待续、、、
- Oracle体系结构之-逻辑结构
- Oracle体系结构之-逻辑结构
- Oracle体系结构之-逻辑结构
- Oracle体系结构之逻辑储存结构
- java.lang.reflect.Array.newInstance与list.toArray
- 设备端口的访问
- 如何实现Session共享
- 上滑动改变头部,仿支付宝头部变化,解决ScrollView与listView冲突问题
- 文章标题
- Oracle之数据库逻辑结构基础讲解
- Nginx负载均衡时RR和ip_hash策略
- windows 使用MD5校验
- java过滤特殊字符串
- 利用cookie控制弹窗24小时只显示一次
- 高级项目管理师培训!看优秀的领导者如何给团队注入激情?
- 移动端H5图片上传的那些坑
- 服务器集群对Synchronized有没有什么影响
- 解决linux.so.2: bad ELF interpreter: No such file or directory