天天看点

表空间和数据文件

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

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

继续阅读