oracle逻辑存储结构

数据块-》区-》段-》表空间-》数据库

一.表空间

1.表空间分为系统表空间和非系统表空间

2012070821320748.jpg

小文件表空间:即系统默认的表空间.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).回滚段:用于数据被修改之前的值.

可以实现事务回滚,数据库恢复,数据库的读一致性和闪回查询等

你可能感兴趣的:(oracle逻辑存储结构)