您现在的位置是:群英 > 数据库 > 关系型数据库
Oracle表空间作用是什么,常见的有哪些
Admin发表于 2022-05-13 16:38:421776 次浏览
这篇文章给大家分享的是“Oracle表空间作用是什么,常见的有哪些”,文中的讲解内容简单清晰,对大家学习和理解有一定的参考价值和帮助,有这方面学习需要的朋友,接下来就跟随小编一起学习一下“Oracle表空间作用是什么,常见的有哪些”吧。

 


在oracle中,表空间是Oracle数据对象和数据存储的容器,是一个逻辑概念,若干操作系统文件就可以组成一个表空间。表空间统一管理空间中的数据文件,一个数据文件只能属于一个表空间;而一个数据库空间由若干个表空间组成。

本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。

Oracle表空间

在数据库系统中,存储空间是较为重要的资源,合理利用空间,不但能节省空间,还可以提高系统的效率和工作性能。

Oracle 可以存放海量数据,所有数据都在数据文件中存储。而数据文件大小受操作系统限制,并且过大的数据文件对数据的存取性能影响非常大。同时Oracle 是跨平台的数据库, Oracle 数据可以轻松的在不同平台上移植,那么如何才能提供统一存取格式的大容量呢? Oracle 采用表空间来解决。

表空间是Oracle数据对象和数据存储的容器,它只是一个逻辑概念,若干操作系统文件(文件可以不是很大)可以组成一个表空间。表空间统一管理空间中的数据文件,一个数据文件只能属于一个表空间。一个数据库空间由若干个表空间组成。如图所示:

Oracle 中所有的数据(包括系统数据),全部保存在表空间中,常见的表空间有:

  • 系统表空间:

    存放系统数据,系统表空间在数据库创建时创建。表空间名称为SYSTEM。存放数据字典和视图以及数据库结构等重要系统数据信息,在运行时如果 SYSTEM 空间不足,对数据库影响会比较大,虽然在系统运行过程中可以通过命令扩充空间,但还是会影响数据库的性能,因此有必要在创建数据库时适当的把数据文件设置大一些。

  • TMEP 表空间:

    临时表空间,安装数据库时创建,可以在运行时通过命令增大临时表空间。临时表空间的重要作用是数据排序。比如当用户执行了诸如 Order by 等命令后,服务器需要对所选取数据进行排序,如果数据很大,内存的排序区可能装不下太大数据,就需要把一些中间的排序结果写在硬盘的临时表空间中。

  • 用户表自定义空间:

    用户可以通过 CREATE TABLESPACE 命令创建表空间

创建表空间

Oracle创建表空间语法结构如下:

create tablespace tab_name
datafile 'filename'
size n
[autoextend on next n1 maxsize m /of]
[permanent] 
[extent management local/dictionary];

语法解析:

  • create tablespace:创建表空间的关键字。

  • tab_name:创建后表空间的名字。

  • datafile:指定数据文件的路径为filename。

  • size n:指定数据文件的大小。

  • [autoextend on next n1 maxsize m /of ]:表示表空间是否是自动扩展的,on 为自动扩展,of为不扩展,当自动扩展时,next n1表示自动扩展的大小,max size m 表示数据文件最大扩展到m大小。

  • [permanent] :表示创建的表空间的类型,permanent表示永久表空间,不填都是默认永久表空间。

  • [extent management local/dictionary]:表示表空间管理的方式,local表示本地的管理模式,dictionary表示数据字典管理模式,默认都是本地管理方式。

案例1、根据表空间创建语法,创建一个100M大小数据文件(student.dbf)的表空间student,代码如下:

create tablespace student
datafile 'E:\APP\ADMIN\ORADATA\ORCL\student.DBF'
size 100m
autoextend on next 10m maxsize 500m
permanent
extent management local;

案例解析:

创建一个student表空间,指定了数据文件为“E:\APP\ADMIN\ORADATA\ORCL\student.DBF”,表空间是自动扩展的,每次自动扩展大小为10M,最大扩展到500M,创建的是永久表空间,用来存储student用户的数据库对象和数据,管理模式为本地管理。

我们查看数据字典dba_data_files和dba_tablespaces对创建好后的student表空间进行查询,查询代码如下:

select t.TABLESPACE_NAME, --表空间名
       t.FILE_NAME, --文件名
       t.AUTOEXTENSIBLE, --是否自动扩展
       t.BYTES / 1024 / 1024, --表空间初始大小
       t.MAXBYTES / 1024 / 1024, --表空间最大扩展到多少
       b.CONTENTS, --表空间类型
       b.EXTENT_MANAGEMENT --表空间管理模式
  from dba_data_files t, dba_tablespaces b
 where t.TABLESPACE_NAME = b.TABLESPACE_NAME


感谢各位的阅读,以上就是“Oracle表空间作用是什么,常见的有哪些”的内容了,通过以上内容的阐述,相信大家对Oracle表空间作用是什么,常见的有哪些已经有了进一步的了解,如果想要了解更多相关的内容,欢迎关注群英网络,群英网络将为大家推送更多相关知识点的文章。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: oracle表空间
相关信息推荐
2022-06-20 17:10:41 
摘要:sql中【case when】用法是:1、使用【case 字段名 when 字段值 then 值1 else 值2 end】来判断字段取值;2、使用【case when 条件 then 值1 else 值2 end】来判断字段取值。
2021-11-16 17:37:02 
摘要:数据库的范式包括哪些?数据库中有六种方式,这篇我们就主要了解数据库的三大范式,也就是第一范式、第二范式、第三范式,以及它们的区别,感兴趣的朋友就继续往下看吧。
2021-11-12 18:01:55 
摘要:这篇文章给大家分享的是oracle和mysql的区别,下文将从宏观和微观这两方面来讲oracle和mysql区别,对大家理解oracle和mysql区别有一定的帮助,感兴趣的朋友接下来一起跟随小编看看吧。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部