数据块-》区-》段-》表空间-》数据库
一.表空间
1.表空间分为系统表空间和非系统表空间
小文件表空间:即系统默认的表空间.System表空间,sysaux表空间
大文件表空间:是为超大型数据库设计的,只包含一个大数据文件,该文件的大小为128KB<size<128TB.
可以简化数据文件的管理,减少SGA的需求,减少控制文件.
表空间的管理包括:
创建表空间
修改表空间
表空间的备份
大文件表空间的管理
2.扩展表空间的方式有哪些?
1).为表空间添加数据文件
SQL>ALTERTABLESPACEORCLTBS1ADDDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE10M; |
为ORCL数据库中表空间名为ORCLTBS1添加一个大小为10MB的新数据文件.
2).改变数据文件的大小
SQL>ALTERDATABASEDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'RESIZE20M; |
将ORCL数据库中表空间名为ORCLTBS1的数据文件ORCLTBS1_2.DBF增加到20MB.
3).允许数据文件自动扩展
SQL>ALTERDATABASEDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF' AUTOEXTENDONNEXT5MMAXSIZE100M; |
3.修改表空间的可用性
SQL>ALTERTABLESPACE...OFFLINE|ONLINE; |
SQL>ALTERTABLESPACEORCLTBS1OFFLINE; |
将表空间ORCLTBS1设置为OFFLINE状态
SQL>ALTERTABLESPACEORCLTBS1ONLINE; |
将表空间ORCLTBS1设置为ONLINE状态
4.给表空间重命名:
ALTERTABLESPACEORCLTBS1RENAMETOORCLTBS1_NEW; |
5.表空间的备份
SQL>ALTERTABLESPACEORCLTBS1BEGINBACKUP; |
复制ORCLTBS1表空间的数据文件ORCLTBS1_1.dbf和ORCLTBS1_2.dbf到目标位置.
SQL>ALTERTABLESPACEORCLTBS1ENDBACKUP; |
6.删除表空间
1).除了system表空间和sysaux表空间外,其他表空间都可以删除.
2).一旦表空间被删除,该表空间中的所有数据将永久性丢失.
3).如果表空间中的数据正在被使用,或表空间中包含未提交事务的回滚信息,则该表空间不能删除
SQL>DROPTABLESPACEORCLTBS1INCLUDINGCONTENTS; |
7.大文件表空间的操作
由于大文件表空间只含有一个数据文件,因此可以通过对表空间的操作,实现对数据文件的透明操作.
改变表空间的大小或扩展性è改变数据文件的大小及扩展性的目的
1).改变数据文件的大小
SQL>ALTERTABLESPACEORCLTBS1RESIZE20M; |
将ORCL数据库中表空间名为ORCLTBS1的数据文件ORCLTBS1_2.DBF增加到20MB.
2).允许数据文件自动扩展
SQL>ALTERTABLESPACEORCLTBS1AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED; |
二.数据块
数据块:1).输入输出的最小单位
2).是数据库中最小的逻辑存储单元,也是数据库执行输入/输出操作的最小单位,由一个或多个操作系统块构成.
三.区
区:是由一系列连续的数据块构成的逻辑存储单元,是存储空间分配与回收的最小单位.
区的管理主要指的是:分配与回收
当创建一个数据库对象时,oracle为对象分配若干个区,以构成一个段来为对象提供初始的存储空间.
1.区的分配
1).区分配采用自动扩展方式进行
SQL>CREATETABLESPACEORACLTBS6DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE20M EXTENTMANAGEMENTLOCALAUTOALLOCATE; |
本地管理方式,自动扩展
2).区分配采用固定大小,每个区5MB
SQL>CREATETABLESPACEORACLTBS7DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE10M EXTENTMANAGEMENTUNIFORMSIZE5M; |
2.区的回收
通常分配给段的区将一直保留在段中,不论区中的数据块是否被使用.只有当段所属的对象被删除时,段中所有的区才会被回收.
四.段
段是由一个或多个连续或不连续的区组成的逻辑存储单元.段是表空间的组成单位,代表特定数据类型的数据存储结构.
通常一个数据库对象只拥有一个段,一个段至少包含一个区.
1).数据段
2).索引段
3).临时段
4).回滚段:用于数据被修改之前的值.
可以实现事务回滚,数据库恢复,数据库的读一致性和闪回查询等