前言
上一张图,这是我们这一讲所有的内容。
![](https://i-blog.csdnimg.cn/blog_migrate/bc5f967ccdf15d2f04bda890dde5110a.jpeg)
上面有一个扫把的符号,代表一对多。那边是一那边是多不用解释吧,左边是逻辑结构,右边是物理结构。
Tablespace
从上面的图可以看出来,最大的逻辑结构是Tablespace。看看默认系统表空间。
![](https://i-blog.csdnimg.cn/blog_migrate/5df9073e69c2e5e06250f54d14896350.png)
默认的表空间有五个。
![](https://i-blog.csdnimg.cn/blog_migrate/9e7ead0c7c4f95ee120421213621484d.jpeg)
创建临时表空间。
![](https://i-blog.csdnimg.cn/blog_migrate/f7340b8b684a9f81017d3d7322442283.png)
创建表空间。
![](https://i-blog.csdnimg.cn/blog_migrate/ab99376a65a90553e541f11492eb9a3f.png)
tablespace分为三种,临时tablespace用来存放临时数据,data tablespace用来存放用户表数据,undo tablespace用来存放undo数据。其他关于tablespace的操作语句我们这里就不一一演示了。记住,它是数据库下面最大的操作集合,可以对应多个物理数据文件,同样可以对应多个segment。
Segment
在Oracle中凡是分配的空间的对象,都称之为段。表,表分区,索引,索引分区,大对象。段也分为数据段,临时段,回滚段。简而言之,平时当我们创建一个表或者其他对象的时候,都会产生同名的段。
![](https://i-blog.csdnimg.cn/blog_migrate/3b1871b0b413445b641310ddc5d880a0.png)
这个东西好理解,其实从一大堆属性来看,其实,有很多东西需要解决的。我们这里也不详细说。
Extent
是由一组连续的数据块组成,多个extent构成段。
![](https://i-blog.csdnimg.cn/blog_migrate/3d3ee584f6c2e675c425fce7db694aa5.png)
这东西没啥好说的。最主要在一连续二字。
Data Block
extent的组成单位,是Oracle操作的最小单位。
总结
这一节本质上也很复杂,特别是Data block,Segment。而我们要掌握的不过是tablespace的操作命令,以及几者的关系。所谓的逻辑结构,不过是Oracle自建的Oracle文件系统。再送上以前我学这里做的两篇作业,没有解释,凑合着看看。