1、表空间的分类
类别 | 举例 | 说 明 |
永久性表空间 | SYSTEM,USERS | 一般保存表、视图、过程和索引等的数据 |
临时性表空间 | TEMP | 只用于保存系统中短期活动的数据 |
撤销表空间 | UNDO | 用来帮助回退未提交的事务数据 |
注意:一般不需要建临时和撤销表空间,除非把它们转移其他磁盘中以提高性能
2、表空间的目的
使用表空间的目的为:
(1)对不同用户分配不同的表空间,对不同的模式对象分配不同的表空间,方便对用户数据的操作,对模式对象的管理。
(2)可以将不同数据文件创建到不同的磁盘中,有利于管理磁盘,有利于提高i/o性能,有利于备份和恢复数据等。
一般在完成Oracle系统的安装并创建Oracle实例后,Oracle系统会自动建立多个表空间。
3、创建表空间
语法
CREATE TABLESPACE tablespacename --tablespacename是创建的表空间名称
DATAFILE 'filename' --指定表空间的一个或多个数据文件,当有多个数据文件时用逗号隔开。
[ SIZE integer [ K | M ] ]--指定文件的大小
[ AUTOEXTEND [ OFF | ON ] ]--开启(ON)或禁用(OFF)自动扩展
示例
create tablespace tp_orders
datafile 'C:\Users\冯军红\Desktop\datafile\tp_orders.dbf'
size 10M autoextend on;
4、调整表空间大小
方式一:直接更改原数据文件的大小
--方法一:更改数据文件的大小
ALTER DATABASE DATAFILE
'C:\Users\冯军红\Desktop\datafile\tp_orders.dbf'
RESIZE 80M;
方式二:向表空间(tp_orders)内追加数据文件,路径可以不同
--方法二:向表空间内添加数据文件
ALTER TABLESPACE tp_orders
ADD DATAFILE
'E:\DATA\tp_hr02.DBF' SIZE 20M
AUTOEXTEND ON;
5、删除表空间
语法
DROP TABLESPACE tablespacename; --tablespacename需要删除的表空间名称
示例
DROP TABLESPACE tp_orders;
注意:删除表空间之前最好对数据库进行备份。