表空间管理概述

1.表空间分类

  1. 按构成文件

    大文件表空间:只能包含1个大文件(最大尺寸为128 TB)

    小文件表空间:可包含多个数据文件(默认)

  2. 按表空间用途:系统表空间、撤销表空间、临时表空间、数据表空间、索引表空间等

  3. 按数据特性:永久表空间、临时表空间、撤销表空间

2.表空间的特性

  1. 一个表空间的大小由其数据文件大小决定
  2. 方案对象可以跨表空间的数据文件存储,但不能跨表空间存储

创建表空间

1.创建表空间的相关规定与概念

  1. 表空间名称不能超过30个字符,必须以字母开头,可以包含字母、数字以及一些特殊字符(如#、_、$)等
  2. 表空间的类型包括普通表空间、临时表空间和撤销表空间
  3. 表空间中区的分配方式包括两种方式:自动扩展(AUTOALLOCATE)和定制(UNIFORM)

2.创建表空间命令语法

CREATE [ SMALLFILE | BIGFILE ] [ TEMPORARY | UNDO ] TABLESPACE tablespace_name

[ DATAFILE|TEMPFILE ] ‘path/filename’ [ SIZE integer[ K | M ]] [ REUSE ]

[ AUTOEXTEND [ OFF∣ON [ NEXT integer [ K∣M ] ] [ MAXSIZE [ UNLIMITED∣integer [ K∣M ] ] ] ]

[ ONLINE | OFFLINE ] [ LOGGING | NOLOGGING ] SEGMENT SPACE MANAGEMENT [ MANUAL | AUTO ]

[ EXTENT MANAGEMENT [ DICTIONARY | LOCAL [ AUTOALLOCATE | UNIFORM [ SIZE integer [ K | M ] ] ] ]

[ DEFAULT STORAGE storage_clause ]

参数 说明
BIGFILE 大文件表空间
SMALLFILE 小文件表空间,默认值,一般不设置该参数
PERMANENT 创建永久表空间,Oracle默认设置
TEMPORARY 创建临时表空间
tablespace_name 指定表空间名称,必须以字母开头,不能超过30个字符
DATAFILE | TEMPFILE 包括表空间对应数据文件或临时文件的名称、初始大小和可变化规则
path/filename 文件路径和文件名
integer 大于0的整数
K/M 指定生成数据文件的初始大小,单位为KB或MB
REUSE 表示数据文件是否被重用
AUTOEXTEND 表明数据文件是否自动拓展
OFF | ON 表示数据文件自动拓展是否被关闭,OFF为关闭,ON为打开
NEXT 表示当数据文件自动拓展打开后,数据文件满了以后拓展的大小
MAXSIZE [ UNLIMITED ] 表示数据文件的最大值,UNLIMITED表示无限的表空间,不推荐
MAXSIZE [integer [ K∣M ] ] 表示数据文件的最大值
ONLINE | OFFLINE 指定表空间生成以后的状态,ONLINE立即处于联机,OFFLINE立即处于脱机
LOGGING | NOLOGGING LOGGING在重做日志下保存记录,NOLOGGING不保存记录

3.创建临时表空间

注意:临时表空间中区的分配方式只能是UNIFORM,而不能是AUTOALLOCATE,因为这样才能保证不会在临时段中产生过多的存储碎片

4.查询表空间信息(数据字典)

  1. DBA_TABLESPACES:数据库中所有表空间的信息

  2. DBA_FREE_SPACE:所有表空间中空闲区的信息

  3. DBA_DATA_FILES:数据文件及其所属表空间信息

  4. DBA_TEMP_FILES:临时文件及其所属表空间信息

  5. V$TABLESPACE:从控制文件得到的所有的表空间的名称和数量

  6. V$DATAFILE:所有的数据文件的信息,包括拥有表空间的数量

  7. V$TEMPFILE:所有的临时文件信息,包括拥有表空间的数量

管理表空间

1.修改表空间的容量

  1. 为表空间增加数据文件

    ALTER TABLESPACE tablespace_name

    ADD [ DATAFILE | TEMPFILE ] ‘path/filename’ [ SIZE integer [ K | M ] ] … ;

  2. 改变数据文件大小

    ALTER DATABASE [ database ]

    DATAFILE ‘path/filename’ RESIZE integer [ K | M ] ;

  3. 改变数据文件的扩展方式

    ALTER DATABASE DATAFILE ‘path/filename’

    [ AUTOEXTEND [ OFF | ON [ NEXT integer [ K | M ] ]

    [ MAXSIZE [ UNLIMITED | integer [ K | M ] ] ] ;

    (1) 如果在创建表空间或为表空间增加数据文件时没有指定AUTOEXTEND ON选项,则该文件的大小是固定的

    (2) 如果为数据文件指定了AUTOEXTEND ON选项,当数据文件被填满时,数据文件会自动扩展

    (3) 注意:尽管可以设置MAXSIZE UNLIMITED,但应总是规定一个文件的最大尺寸值。否则,使用磁盘设备上全部可用空间的事务将造成数据库故障。

  4. 删除表空间数据文件

    ALTER TABLESPACE tablespace_name

    DROP DATAFILE ‘path/filename’ ;

    注意:不能够删除表空间中的第一个数据文件,如果将第一个数据文件删除的话,相当于删除了整个表空间

2.修改表空间可用性

  1. 离线状态的表空间是不能进行数据访问的,所对应的所有数据文件也都处于脱机状态
  2. 一些表空间必须是在线状态:SYSTEM表空间;存放在线回退信息的撤销表空间(UNDO表空间);临时表空间
  3. 基本语法:ALTER TABLESPACE tablespace_name ONLINE | OFFLINE

3.修改表空间读写性

  1. 表空间只有满足下列要求才可以转换为只读状态

    (1) 表空间处于联机状态

    (2) 表空间中不能包含任何活动的回退段

​ (3) 如果表空间正在进行联机数据库备份,不能将它设置为只读状态

  1. 基本语法:ALTER TABLESPACE tablespace_name READ ONLY|READ WRITE

删除表空间

1.删除表空间

  1. 基本语法

    DROP TABLESPACE tablespace_name

    [ INCLUDING CONTENTS [ AND DATAFILES ]

    [ CASCADE CONSTRAINTS ] ;

  2. 注意:数据库级的默认表空间不能删除,用户级的可以删除

  3. 删除数据库级的默认表空间,Oracle会报错:ORA12919:不能删除默认永久表空间

Oracle 数据库表空间的管理相关推荐

  1. 更改oracle 表空间大小,更改oracle数据库表空间大小

    Oracle表空间扩展 使用oracle时可能遇到无法通过8192在表空间中扩展错误,原因是数据库的表空间不足. oracle表空间数据文件容量与db_block_size有关,在初始建库时指定DB_ ...

  2. 唐老师 oracle,ORACLE数据库表空间的监控和维护_快速发表职称论文网

    ORACLE数据库表空间的监控和维护 摘 要:通过ORACLE数据库内部管理表和视图加强数据库系统数据表空间的监控和维护. 关键字:数据库表空间监控 ORACLE数据库在系统性能,安全性以及可靠性方面 ...

  3. Oracle数据库查看表空间sql语句、查看Oracle数据库表空间剩余 、修改表空间、库备份

    一  Oracle数据库查看表空间sql语句 1.oracle查看表空间当前用户 SQL>  select  username,default_tablespace  from user_use ...

  4. Oracle 数据库表空间不足拓展方法实例演示,表空间剩余大小查看,通过新增表空间文件拓展表空间,表空间文件路径查看

    Oracle 数据库表空间 第一章:表空间的拓展 ① 查看剩余表空间大小 ② 查看表空间文件路径 ③ 通过新增表空间文件拓展表空间 ④ 查看表空间已分配大小 第一章:表空间的拓展 ① 查看剩余表空间大 ...

  5. linux数据库创建表空间语句,如何用LINUX用命令创建ORACLE数据库表空间和用户

    如何用LINUX用命令创建ORACLE数据库表空间和用户 文本模式下如何建 更新时间:2019-06-21 19:36 最满意答案 先su 到 oracle用户,SYS用户以DBA身份登陆 //创建临 ...

  6. 查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件

    http://suan2046.iteye.com/blog/379539 标题:查看Oracle数据库表空间大小,是否需要增加表空间的数据文件 在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问 ...

  7. 创建oracle 数据库表空间,角色,用户的sql语句

    创建oracle 数据库表空间,角色,用户的sql语句 1.创建角色 CREATE ROLE "QIUDINGROLE" NOT IDENTIFIED; GRANT "C ...

  8. oracle数据库表空间巡检

    shell oracle数据库表空间.进程.监听自动巡检 1.巡检标准 (1)使用oracle用户登录 (2)执行红色字体部分进入数据库:sqlplus "/as sysdba" ...

  9. ORACLE数据库表空间备份方案

    首先是注意事项:待迁移的表空间必须自包含,EXP.IMP工具版本必须与ORACLE数据库版本一致(不是相同),其次是要严格按照如下操作步骤进行,并请留意提示内容.       以下是操作步骤,1~5步 ...

最新文章

  1. php访问参数错误,phpcms参数错误怎么办
  2. android 小球效果,Android开发实现跟随手指的小球效果示例
  3. creatdep oracle_Oracle数据库自带表
  4. 结构体内元素不确定_氮长叶,磷长果,那么生物菌肥能长啥?看完终于不纠结了...
  5. bash 的相关配置
  6. CSS之不使用Media Queries的自适应CSS
  7. django debug=false后静态文件丢失_Django DEBUG=False后DEBUG=True带来的问题
  8. 自定义Xshell高亮
  9. 成都公办计算机学校,成都计算机学校公立-成都公立的计算机学校有哪
  10. cad快捷栏怎么调出来_cad工具栏怎么调出来
  11. java - EM算法
  12. 电脑保护眼睛的颜色设置
  13. 入手新吉他了--雅马哈F600
  14. 中国科学院计算机所刘夏真,中国科学院大学2015年博士生录取名单公示(55)
  15. 电子发票电子化报销入账归档 给区块链领域带来了什么样的机遇
  16. 网页 从其他服务器 加载图片,实现网页图片的异步加载
  17. SQLServer 2012 Always on配置全过程
  18. Git如何处理blob上的SHA-1冲突?
  19. 北京功略----购物篇
  20. LeetCode160.相交链表

热门文章

  1. audio 小程序 放大_微信小程序搜索优化指南
  2. MAC地址和IP地址说明
  3. 在Unity中使用ComputeShader
  4. 【云和恩墨大讲堂】彭文元 - 中间件BES连接池的配置和问题诊断方法
  5. 方法功能增强 - 继承、装饰者模式、动态代理
  6. tpwr886n路由器设置虚拟服务器,tl-wr886n路由器设置步骤图解 | 192路由网
  7. 浮点变量(float, double等)和零值的比较
  8. 国密(3)- 预主密钥/主密钥计算和Finished消息的加解密
  9. python编写计算二项式值_python二项式期权定价方法
  10. 分享过几个【贪吃蛇】了,再分享一下也不过分吧?(妙趣横生)