1、表空间的类型:SYSTEM型和非SYSTEM型

SYSTEM表空间:随数据库创建,包含数据字典、system还原段;

非SYSTEM表空间:用户分开存储段,易于空间管理,控制分配给用户的空间量;

 

2、表空间的创建:

表空间创建的命令为CREATE TABLESPACE,创建时要定义数据文件的位置、大小和数量;数据文件的大小可以在创建表空间后再扩充;

 

3、表空间的空间管理:

1)本地管理的表空间:在表空间内管理空闲区;用位图(BITMAP)来记录空闲区,每一位与一个块或一组块相对应并指明是空闲还是占用;减少了对数据字典的争用,分配或回收空间时不产生还原数据;

2)字典管理的表空间:

 

4、其他类型的表空间:

1)还原表空间(undo):只能用于存储还原段,不能包含任何其他对象,本地管理(DATAFILE EXTENT MANAGEMENT LOCAL);

2)临时表空间:不能存储任何永久对象,用于排序操作,建议EXTENT MANAGEMENT LOCAL;

3)只读表空间:ALTER TABLESPACE tablespace_name READ ONLY;数据仅用于读操作,可从表空间删除对象;

 

5、表空间的管理:

1)表空间的脱机:表空间脱机之后,无法访问到表空间的数据;不能脱机的表空间为:system表空间、具有活动的还原段的表空间、缺省临时表空间;

ALTER TABLESPACE tablespace_name OFFLINE/ONLINE;

2)更改表空间的存储结构:不能更改本地管理的表空间的存储设置;

3)调整表空间的大小:自动调整表空间大小,查询DBA_DATA_FILES,AUTOEXTEND是否启用,否则的话ALTER TABLESPACE,将AUTOEXTEND置为ON;手动调整表空间大小,ALTER DATABASE DATAFILE ‘目录\名称' RESIZE ...;也可以通过向表空间添加数据文件来调整表空间大小,ALTER TABLESPACE tablespace_name ADD DATAFILE datafile_name SIZE …;

4)数据文件的移动:用ALTER TABLESPACE来移动数据文件,必须要求表空间脱机和目标数据文件必须存在;步骤如下:

使表空间脱机——使用操作系统命令移动或复制文件——ALTER TABLESPACE RENAME DATAFILE…TO…;——使表空间联机——必要时使用操作系统命令删除该文件;

5)删除表空间:不能删除SYSTEM表空间和具有活动段的表空间;

INCLUDING CONTENTS 将删除段;

INCLUDING CONTENTS AND DATAFILES 将删除数据文件;

CASCADE CONSTRAINTS 将删除所有引用完整性约束;

 

6、表空间的OMF管理:

ALTER SYSTEM动态设置:ALTER SYSTEM SET DB_CREATE_FILE_DEST='位置\名称';创建表空间时,数据文件会自动存放在参数指定的位置,缺省值大小为100M

删除表空间也将删除操作系统文件;