表空间
表空间是数据库中最大的逻辑单位,Oracle数据库采用表空间将相关的逻辑组件组合在一起,一个Oracle数据库至少包含一个表空间。每个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系。
在每一个数据库中都有一个名为SYSTEM的表空间,即系统表空间,该表空间是在创建数据库或数据库安装时自动创建的,用于存储系统的数据字典表、程序单元、过程、函数、包和触发器等。
表空间类型
永久性表空间:一般保存表、视图、过程和索引等的数据
临时性表空间:只用于保存系统中短期活动的数据
撤销表空间:用来帮助回退未提交的事务数据
操作与运用
创建表空间
【语法】 CREATE TABLESPACE 表空间名 DATAFILE '数据文件路径' SIZE 大小 [AUTOEXTEND ON] [NEXT 大小] [MAXSIZE 大小];
【说明】[]里面内容可选项;数据文件路径中若包含目录需要先创建 SIZE为初始表空间大小,单位为K或者M AUTOEXTEND ON 是否自动扩展 NEXT为文件满了后扩展大小 MAXSIZE为文件最大大小,值为数值或UNLIMITED(表示不限大小)
【示例】 CREATE TABLESPACE zx_ts DATAFILE 'd:\oracle_data\zx01.dbf' SIZE 10M AUTOEXTEND ON; |
查询表空间
--管理员角色查看表空间 SELECT file_name,tablespace_name,bytes,autoextensible FROM dba_data_files WHERE tablespace_name='zx_TS'; |
修改表空间
【语法】 ALTER TABLESPACE 表空间名 ADD DATAFILE '文件路径' SIZE 大小 [AUTOEXTEND ON] [NEXT 大小] [MAXSIZE 大小];
【示例】 ALTER TABLESPACE zx_ts ADD DATAFILE 'd:\oracle_data\zx02.DBF' SIZE 5M AUTOEXTEND ON;
|
删除表空间
【语法】 DROP TABLESPACE 表空间名; DROP TABLESPACE 表空间名 INCLUDING CONTENTS AND DATAFILES;
【说明】 第一个删除语句只删除表空间;第二个删除语句则删除表空间及数据文件
【示例】 DROP TABLESPACE zx_ts; DROP TABLESPACE zx_ts INCLUDING CONTENTS AND DATAFILES; |