Oracle表空间详解

1.表空间的分类

Oracle数据库把表空间分为两类:系统表空间和非系统表空间。

1.1系统表空间指的是数据库系统创建时需要的表空间,这些表空间在数据库创建时自动创建,是每个数据库必须的表空间,满足数据库系统运行的最低要求,如系统表空间中存放的数据字典、还原段。在用户没有创建非系统表空间时,系统表空间可以存放用户数据或索引等,但是这样做会增加系统表空间的I/O,影响系统效率。

1.2非系统表空间是用户根据业务需求而创建的表空间,非系统表空间可以按照数据多少、使用频度、需求数量等方面灵活设置,这些表空间可以存储还原段或者临时段,可以有效的提高系统的效率。

2.创建表空间

2.1创建常用表空间

create tablespace user_data001  datafile 'd:\user_data001.dbf' size 100M;

2.2创建本地管理的表空间

create tablespace bendi_data datafile 'd:\bendi_data.dbf' size 100M

extent management local uniform size 1M;

2.3创建还原表空间

create undo tablespace user_undo datafile 'd:\user_undo.dbf' size 10M;

2.4创建临时表空间

create temporary tablespace user_temp tempfile 'd:\user_temp.dbf' size 20M
   extent management local
   uniform size 1M;

2.5创建默认临时表空间

默认临时表空间指的是一旦数据库启动则默认使用该表空间作为默认的临时表空间,用于存放用户会话数如排序操作。默认临时表空间可以在创建数据库时创建,指令为default temporary tablespace ,也可以在数据库创建后创建,此时需要先建立一个临时表空间,再使用alter database default temporory tablespace 指令更改临时表空间。

2.6创建大文件表空间

create bigfile tablespace bigfiletbs datafile 'd:\bigfiletbs001.dbf' size 2G;

大文件表空间由一个大文件组成,而不是由多个传统的小文件组成,这使得Oracle有能力创建和管理大文件。正是大文件表空间和大文件的一一对应特性,使得表空间成为磁盘空间管理、备份和恢复的操作对象。

3.表空间管理

3.1只读管理就是把表空间设置为只读状态,这样的表空间中的数据只能被用户读取,而不能做任何修改或插入操作,只读表空间不被重做日志保护,减少重做日志的大小。将表空间设置为只读状态:alter tablespace user_tas read only;

3.2修改表空间大小:

第一种是在创建表空间时,使用AUTOEXTEND ON字句使得表空间在需要的时候可以自动扩展

create tablespace manager_tbs1 datafile 'd:/tbs_manager1/tbs1.dbf' size 100M  autoextend on;

第二种是在创建表空间后使用ALTER DATABASE DATAFILE   file_name(完整路径) AUTOEXTEND ON

第三种是在表空间中增加数据文件

alter tablespace manage_tbs add datafile 'd:\tbs_manager\tbs002.dbf' size 50M;

第四种方法是修改数据文件的大小

alter  database datafile 'd:\tbs_manager\tbs002.dbf' resize 100M;

4.删除表空间

当不需要一个表空间时,可以删除该表空间以释放磁盘空间。

DROP TABLESPACE tablespace_name

[INCLUDING CONTENTS [AND DATAFILES] [CASCADE CONSTRAINTS]]

including contents:删除表空间中的所有区段

and datafiles:删除表空间中的数据文件,该文件时一个Oracle格式的操作系统文件

cascade constraints:删除和该表空间中表相关的引用完整性约束,外部表会引用该表空间的表的唯一键等作为外部表的引用。

-------------------------------------------------------------------------

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

Oracle表空间详解的更多相关文章

  1. Oracle 表空间详解

    目录 目录 表空间概述 表空间的分类 默认表空间 查看默认的永久表空间 查看默认的TEMP表空间 查看默认的表空间类型 逻辑结构到物理结构的映射 对表空间的操作 查看表空间使用情况 查看数据库拥有的表 ...

  2. ORACLE结构体系篇之表空间详解.md

    表空间详解一.系统表空间SYSTEM 表空间是Oracle 数据库最重要的一个表空间,存放了一些DDL 语言产生的信息以及PL/SQL 包.视图.函数.过程等,称之为数据字典,因此该表空间也具有其特殊 ...

  3. oracle表分区详解

    原文来自:http://www.cnblogs.com/leiOOlei/archive/2012/06/08/2541306.html oracle表分区详解 从以下几个方面来整理关于分区表的概念及 ...

  4. 【Oracle XE系列之四】创建OracleXE表空间详解

    创建OracleXE表空间示例 sqlplus /nolog connect sys as sysdba SQL> create tablespace OPFOCN  datafile 'C:\ ...

  5. oracle表分区详解(按天、按月、按年等)

    分区表的概念:  当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区.表进行分区后,逻辑上表仍然是一张完整的表,只是将表中的数据在物理上存放到多个表空间 ...

  6. mysql-5.7 收缩系统表空间详解

    innodb 系统表空间是一个逻辑上的概念,它的物理表现就是innodb系统表空间文件:在讲扩展系统表空间时我们说到 可以用增加文件,增加autoextend标记 这两种方式来解决:但是问题到了收缩表 ...

  7. 分享知识-快乐自己:oracle表分区详解

    从以下几个方面来整理关于分区表的概念及操作: 1)表空间及分区表的概念: 2)表分区的具体作用: 3)表分区的优缺点: 4)表分区的几种类型及操作方法: 5)对表分区的维护性操作: 1):表空间及分区 ...

  8. MySQL数据库系列(四)- InnoDB下的共享表空间和独立表空间详解

    一.概念 共享表空间: Innodb的所有数据保存在一个单独的表空间里面,而这个表空间可以由很多个文件组成,一个表可以跨多个文件存在,所以其大小限制不再是文件大小的限制,而是其自身的限制.从Innod ...

  9. mysql-5.7 扩展innodb系统表空间详解

    一.innodb系统表空间的简介: innodb 系统表空间是由若干个文件组成的,表空间的大小就是对应文件的大小,表空间文件是由innodb_data_file_path 这人参数来定义的.下面我们来 ...

随机推荐

  1. C语言sendto()函数-经socket传送数据以及recvfrom函数《转》

    相关函数:send, sendmsg, recv, recvfrom, socket 头文件:#include <sys/types.h>   #include <sys/socke ...

  2. 【Unity3D】【NGUI】UICamera

    原文:http://www.tasharen.com/forum/index.php?topic=6711.0 NGUI讨论群:333417608 概述 UICamera这个名字不是很合适,保留的原因 ...

  3. 4. Qt的容器类

      Qt提供来一组通用的基于模板的容器类. 一. QList类,QLinkedList类 和  QVector类         QList类.QLinkedList类和QVector类常常使用到的Q ...

  4. TPL异步并行编程之取消任务

    TPL异步并行编程之简单使用 在上篇随笔里面说明了Task的使用,仅仅是简单使用,有时候把一个任务交给Task去执行,但是呢还是要管理下,比如说:我要叫这个任务停止了,不做了,任务取消了,或者超时了 ...

  5. NFS服务器端配置

    服务器端配置1 创建共享目录# mkdir /home/share# chown nobody.nogroup /home/share2 创建或修改/etc/exports 配置文件这个文件的内容非常 ...

  6. MySQL字符集编码

    MySQL字符集编码总结 之前内部博客上凯哥分享了一篇关于mysql字符集的文章,之前我对mysql字符集一块基本没有深究过,看到凯哥文章后有些地方有点疑惑,遂自己去看了mysql的官方文档,并參考了 ...

  7. 使用iftop网络流量监控

    iftop这是一个非常有用的工具.下面的命令监视无线网卡在我的笔记本 iftop -i wlan0 比如,我现在玩音乐视频.iftop显示的信息: 基本说明: 1. 屏幕主要部分都是表示两个机器之间的 ...

  8. “聊天剽窃手”--ptrace进程注入型病毒

    近日,百度安全实验室发现了一款"聊天剽窃手"病毒.该病毒可以通过ptrace方式注入恶意代码至QQ.微信程序进程.恶意代码可以实时监控手机QQ.微信的聊天内容及联系人信息. 该病毒 ...

  9. Java深入解析读书笔记(一)

    1. goto,const为java的两个保留关键字,无任何应用语法.因此从不使用.   goto 使用循环标签:if,break out,here实现goto的功能. 2. 标识符:可由字母数字下划 ...

  10. Eclipse 修改maven 仓储Repository位置

    简述: 使用两个Nexus, 需要配置两份不同的Maven仓库 步骤: 1. 下载新的Maven运行包 2. 进入conf/ 修改setting.xml项 <localRepository> ...