表空间的概念

一、什么是表空间

表空间是一个逻辑概念,它统一管理空间中的数据文件。一个数据库可以有多个表空间,但一个表空间只能属于一个数据库,一个表空间可以有多个数据库文件,但一个数据文件只能属于一个表空间。
通俗来讲,数据库(房间外壳),表空间(房间里面的空间),数据库文件(空间中的箱子),表(箱子里的东西)。因为主要存放的是表,所以叫表空间。
用户指定表空间也就是你希望把这个用户的表放在哪个表空间里面。

二、表空间的分类

  1. 永久性表空间,如system,users,一般保存表、视图、过程和索引等数据
  2. 临时性表空间,如TEMP,只用于保存系统中短期活动的数据,当你提交之后(commit),数据就会从临时表空间迁移到永久性表空间去,同时临时表空间将被清空.
  3. 撤销表空间,如UNDO,用于帮助用户回退未提交的事务数据

注意:

  1. 一般不需要建立临时和撤销表空间,除非要把它们转移到其他磁盘中以提高性能。
  2. 基于应用性能和管理方面的考虑,最好为不同的子系统创建独立的表空间,一个表空间对应一个信息系统。

三、创建表空间

CREATE TABLESPACE bank_TABLESPACE
LOGGING --日志
DATAFILE 'D:\DevelopmentTool\oracle\oradata\orcl\bank_TABLESPACE.dbf'
SIZE 100M --初始大小
AUTOEXTEND ON --是否自动扩大
NEXT 32M   --每次扩大32MB
MAXSIZE UNLIMITED --可以无限大
EXTENT MANAGEMENT LOCAL;

表空间已创建

四、修改表空间

  1. 修改表空间的大小
ALTER DATABASE DATAFILE 
      'D:\DevelopmentTool\oracle\oradata\orcl\bank_TABLESPACE.dbf'--这是你表空间的路径
      RESIZE 80M;

表空间大小已修改

五、删除表空间

--删除空的表空间,但是不包含物理文件
drop tablespace tablespace_name;

--删除非空表空间,但是不包含物理文件
drop tablespace tablespace_name including contents;
例:DROP TABLESPACE bank_TABLESPACE INCLUDING CONTENTS;

--删除空表空间,包含物理文件
drop tablespace tablespace_name including datafiles;

--删除非空表空间,包含物理文件
drop tablespace tablespace_name including contents and datafiles;

--如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段,就要加上CASCADE CONSTRAINTS
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS;
  • 32
    点赞
  • 158
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值