码迷,mamicode.com
首页 > 数据库 > 详细

【Oracle】表空间相关集合

时间:2018-09-03 02:43:07      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:blog   www   存在   rop   toe   title   最大   限制   delete   

创建表空间

1.语法

CREATE [SMALLFILE/BIGFILE] TABLESPACE tablespace_name
DATAFILE ‘/path/filename‘ SIZE num[k/m] REUSE
[,‘/path/filename‘ SIZE num[k/m] REUSE]
[...]
[AUTOEXTEND [ON|OFF] NEXT num[k/m]]
[MAXSIZE EXTEND [UNLIMITED | num[k/m]]]
[MINIMUN EXTEND num[k/m]]
[DEFAULT STORAGE storage]
[ONLINE|OFFLINE]
[LOGGING|NOLOGGING]
[PERMANENT|TEMPORARY]
[EXTENT MANAGEMENT DIRECTORY|LOCAL [AUTOALLOCATE|UNIFORM SIZE num[k/m]]]]

语法中的关键字

  • SMALLFILE/BIGFILE:表示创建的是小文件表空间还是大文件表空间
  • AUTOEXTEND [ON|OFF] NEXT :表示数据文件为自动扩展(ON)或非自动扩展(OFF),如果是自动扩展,则需要设置NEXT的值。
  • MAXSIZE :表示当前数据文件扩展时,允许数据文件扩展的最大长度字节数,如果指定UNLIMITED关键字,则不需要指定字节长度。
  • MINIMUN EXTEND:指定最小的长度,由操作系统和数据库的块决定。
  • ONLINE|OFFLINE:创建表空间时可以指定为在线或离线
  • PERMANENT|TEMPORARY:指定创建的表空间时永久表空间或临时表空间,默认是永久表空间。
  • LOGGING|NOLOGGING指定该表空间内的表在加载数据时是否产生日志,默认产生日志。即使设置为NOLOGGING,但在进行INSERT、UPDATE、DELETE操作时,Oracle仍将操作记录到Redo Log Buffer中。
  • EXTENT MANAGEMENT DIRECTORY|LOCAL指定表空间的扩展方式是使用数据字典管理还是本地化管理,默认本地化管理。Oracle不推荐使用数据字典表管理表空间。、
  • AUTOALLOCATE|UNIFORM :如果采用本地化管理表空间,在表空间扩展时,指定每次盘区扩展的大小是由系统自动指定还是按照同等大小进行。若按照同等大小进行,则默认每次扩展为1MB

语法中的参数说明

  • tablespace_name该参数表示要创建的表空间名称
  • ‘/path/filename‘ :该参数表示数据文件的名字与存储路径,REUSE表示该表空间存在,则清除该文件后重新创建,不存在,则直接创建。
  • DEFAULT STORAGE storage指定以后要创建的表、索引及簇的存储参数值,这些参数将影响以后表等的存储参数。
  • num[K/M]指文件的大小,例如10k 或者10M

 

2.创建表空间实例

案例一:创建一个扩展大小为5M的表空间

create tablespace tbs_test_1 datafile D:\app\OLIVER\oradata\tbs_file1.dbf
size 20m
extent management local uniform size 5M;

注意:此种方法建立的表空间存储上限值为20M.

当表空间容量快要超过20M时,则会报错如下:

技术分享图片

 

 

案例二:创建一个扩展大小为自动管理的表空间

create tablespace tbs_test_2 datafile D:\app\OLIVER\oradata\tbs_file2.dbf
size 20m
extent management local autoallocate;

同理,当表空间大小快要达到20M时候报错如上图。

注意:此种方法建立的表空间存储上限值为20M.

 

案例三:创建自动扩容的表空间

create tablespace tbs_test_3 datafile D:\app\OLIVER\oradata\tbs_file3.dbf
size 20m
autoextend on next 2M maxsize unlimited 
extent management local autoallocate;
当向数据表插入数据是,表空间会一直往数据表插入数据,并且表空间每增加一次为2M

 

删除表空间

1.语法

DROP TABLESPACE tbs_name[INCLUDING CONTENTS][CASCADE CONSTRAINTS]

  • tbs_name要删除的表空间名称
  • INCLUDING CONTENTS删除表空间的时候删除数据,如果不指定该参数,则删除时候会报错
  • CASCADE CONSTRAINTS表示当删除表空间时也删除相关的完整性限制,完整性限制包括主键及唯一索引等。如果完整性存在,而没有该参数,则表空间删除报错,并且表空间无法删除。

2.删除实例

drop tablespace TBS_TEST_3 including contents cascade constraints

 

查询表空间使用情况

 

查询表空间使用情况https://www.cnblogs.com/OliverQin/p/5217481.html

【Oracle】表空间相关集合

标签:blog   www   存在   rop   toe   title   最大   限制   delete   

原文地址:https://www.cnblogs.com/OliverQin/p/9576348.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!