· 表空间概述

  <1> 理解表空间

    ① 表空间与数据库的关系:

      表空间是数据库的逻辑存储空间,可以理解为在数据库中开辟的一块空间,用于存放数据库的对象。 一个数据库可以由多个表空间构成。Oracle的很多优化都是通过表空间实现的。

    ② 表空间与数据文件的关系:

      表空间是由一个或多个数据文件构成的,数据文件的大小和位置可以由用户来决定。表和其他数据库对象都是存放在表空间的数据文件中的。       

  <2> 表空间的分类

    ① 永久表空间

      存储需要被永久化存储的数据库对象,比如表,视图,存储过程等

    ② 临时表空间

      存储数据库操作中中间执行的过程,执行完之后会被自动删除,不会被永久存储。

    ③ UNDO表空间

      存储事务修改的数据的旧值,也就是说被修改之前的数据。例如对一张表修改,会对修改前的信息进行保存,这样就可以进行事务的回滚。

· 查看用户的表空间

  <1> dba_tablespaces、user_tablespaces数据字典

     dba_tablespaces是系统管理员权限级别的用户进行查看的数据字典,usertablespaces是普通用户进行查看的数据字典。

    

     在系统管理员权限的用户下用 desc dba_tablespaces 查看 dba_tablespaces 的表结构

     

     使用 SELECT tablespace_name FROM dba_tablespaces; 查看当前系统管理员用户下的表空间名称。

     

     使用 SELECT tablespace_name FROM user_tablespaces; 查看当前普通用户下的表空间名称。

     

  <2> dba_users、user_users 数据字典

     dba_users是系统管理员权限级别的用户进行查看的数据字典,user_users 是普通用户进行查看的数据字典

     使用 SELECT tablespace_name FROM dba_users; 查看数据库中所有用户的名称。

     使用 SELECT tablespace_name FROM user_users; 查看当前用户的名称。

  <3> 设置用户的默认/临时表空间

     ALTER USER username DEFAULT | TEMPORARY TABLESPACE tablespace_name;

     (注意: 普通用户没有权限修改默认/临时表空间

· 创建、修改和删除表空间

  <1> 创建表空间

     创建永久表空间语法: CREATE TABLESPACE tablespace_name DATAFILE 'xxx.dbf' SIZExx;

     创建临时表空间语法: CREATE TEMPORARY TABLESPACE tablespace_name TEMPFILE 'xxx.dbf' SIZExx;

     查看表空间的文件路径可以使用:

      SELECT file_name FROM dba_data_files WHERE  tablespace_name = 'tablespace_name';

     (注意: xxx.dbf为文件名,xx为文件大小。'tablespace_name' 需大写

  <2> 修改表空间

     设置表空间的联机/脱机状态(默认为联机状态):

     ALTER TABLESPACE tablespace_name ONLINE | OFFLINE;

     设置只读或可读写状态(默认为可读写状态):

     ALTER TABLESPACE tablespace_name READ ONLY | READ WRITE;

     增加数据文件:

     ALTER TABLESPACE tablespace_name ADD DATAFILE 'xxx.dbf' SIZE xx;

     删除数据文件:

     ALTER TABLESPACE tablespace_name DROP DATAFILE 'xxx.dbf' ;

  <3> 删除表空间

     DROP TABLESPACE tablespace_name [INCLUDING CONTENTS] ;

     (注意: 加上INCLUDING CONTENTS 会将此表空间的内容同时删掉

作者:caobotao
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。

(2)Oracle基础--表空间的更多相关文章

  1. Oracle基础表空间建立,以及练习

    Oracle的表空间创建,可以采用网页的https://127.0.0.1:1158/em来进入oracle的页面进行创建表空间. 利用plsqldev.exe程序在表空间里添加数据: 首先要在use ...

  2. Oracle基础 表分区

    Oracle基础 表分区 一.表分区 (一)表分区的分类 1.范围分区(range) 2.散列分区(hash) 3.列表分区(list) 4.复合分区:范围-哈希(range-hash).范围-列表( ...

  3. oracle数据库表空间追加数据库文件方法

    oracle数据库表空间追加数据库文件方法   针对非大文件方式表空间,允许追加文件进行表空间的扩展,单个文件最大大小是32G  第一种方式:表空间增加数据文件    www.2cto.com   1 ...

  4. Oracle 设置表空间自增长

    Oracle修改表空间大小 使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入数据表时发生错误: 查了很多资料发现原来是Oracle表空间限制,导致无法继续导入数据 ...

  5. Oracle Temp表空间切换

    来源于:  http://www.2cto.com/database/201507/418564.html 一.TEMP表空间作用 临时表空间主要用途是在数据库进行排序运算.管理索引.访问视图等操作时 ...

  6. [转载]Oracle修改表空间大小

    Oracle修改表空间大小 使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入数据表时发生错误: 查了很多资料发现原来是Oracle表空间限制,导致无法继续导入数据 ...

  7. Oracle建立表空间和用户

    Oracle建立表空间和用户 建立表空间和用户的步骤: 用户 建立:create user 用户名 identified by "密码"; 授权:grant create sess ...

  8. oracle 11g 表空间使用率

    Oracle数据库表空间使用量查询: select b.file_name 物理文件名,b.tablespace_name 表空间,b.bytes/1024/1024 大小M,(b.bytes-sum ...

  9. oracle暂时表空间 ORA-01652:无法通过16(在表空间XXX中)扩展 temp 字段

    今天在查数据的时候报错  ORA-01652:无法通过16(在表空间temp1中)扩展 temp 字段 查看表空间使用明细 SELECT b.tablespace,        b.segfile# ...

随机推荐

  1. PAT 1078 字符串压缩与解压(20)(代码+思路)

    1078 字符串压缩与解压(20 分) 文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示.例如 ccccc 就用 5c 来表 ...

  2. 关于使用smsx.cab控件做web打印使用方法(转)

    注意:在使用之前先告诉下我的痛苦经历 在做WEB项目是我的JSP页面在jsp文件夹里,我把smsx.cab放在js文件夹里(jsp和js是用级别目录) 在本机上测试可以正确下载控件,但是部署到测试服务 ...

  3. Kendo UI中TreeView 放入tabstrip中,大数据量时超过边框的解决方案。

    参考http://www.kendoui.com/forums/ui/tabstrip/tabstip-with-treeview-treeview-breaking-out-of-tabstrip. ...

  4. 在使用html5的video标签播放视频时为何只有声音却没有图像

    在使用html5的video标签播放视频时为何只有声音却没有图像? 答:使用格式化工厂转个编码就行了,MP4有3种编码,mpg4(xdiv),,mpg4(xvid),avc(h264)转换成H264编 ...

  5. 2018.08.21 NOIP模拟 unlock(模拟+找规律)

    unlock 描述 经济危机席卷全球,L国也收到冲击,大量人员失业. 然而,作为L国的风云人物,X找到了自己的新工作.从下周开始,X将成为一个酒店的助理锁匠,当然,他得先向部门领导展示他的开锁能力. ...

  6. Navicat for oracle cannot load OCI DLL

    Navicat for oracle 提示 cannot load OCI DLL87,126,193 instant client package is required for basic and ...

  7. sqlserver 清除日志

    要使用Master数据库执行 DUMP TRANSACTION 数据库名 WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件-- ...

  8. origin里用c语言编程

    学习自白东升老师的origin8.0课程. 其实是originC语言.origin中大多绘图和处理功能都是originC语言完成的,可以同时按下ctrl和shift然后点击相应的功能,就会出现每个按钮 ...

  9. 命令行生成war包

    1.找到自己的代码位置 2.进入cmd界面 3.进入对应的目录 4.执行命令 5.就会开始自动打包 6.在文件夹下生成对应的war包

  10. BZOJ 1007 [HNOI2008]水平可见直线 (栈)

    1007: [HNOI2008]水平可见直线 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 7940  Solved: 3030[Submit][Sta ...