ORACLE表空间管理

表空间是一个逻辑概念,数据文件是表空间的物理映射,若干操作系统文件可以组成一个表空间。表空间统一管理空间中的数据文件,一个数据文件只能属于一个表空间。一个数据库空间由若干个表空间组成。

在创建完ORACLE数据库后,默认有五个表空间,分别为SYSAUX、SYSTEM、UNDOTBS1、USERS以及TEMP表空间。用户可以根据自己的需要创建若干的用户表空间。

默认表空间说明:

SYSTEM :存放数据字典,包括表、视图、存储过程的定义等。

SYSAUX :SYSTEM表空间的辅助空间。主要用于存储除数据字典外的其他的数据对象,这样可以减少SYSTEM表空间的负荷。

TEMP:存放SQL语句处理的表和索引的信息,比如数据排序就占用此空间。

UNDOTBS1  :存放撤销数据的表空间。

USERS:通常用于存放应用系统所使用的数据对象。

按数据文件的类型分,表空间分为large表空间和smallfile表空间。创建表空间时数据文件默认为smallfile。若不做修改,ORACLE块大小一般为8k。由参数db_block_size 控制。每个数据文件最多包含4M个块大小,即8M块的每个数据文件最大为32G,而每个samall表空间最大可包含1024个数据文件。而每个bigfile表空间的数据文件最多可容纳4G个块,但只能拥有一个数据文件。

表空间操作:

1)创建表空间

create tablespace DT_TPC_DAT datafile '/opt/oracle/data/tpc/DT_TPC_DAT01.DBF' size 1G autoextend on next 200M maxsize 31G;

2)删除表空间

drop tablespace talespace_name including contents and datafile;

3)修改表空间权限

alter tablespace tablespace_name read write;

alter tablespace tablespace_name read only;

4)脱机表空间

alter tablespace tablespace_name offline;

5)表空间改名

alter tablespace tablespace_name1 rename to tablespace_name2;

6)表空间说明

system 表空间必须online 必须是read write

sysaux 表空间可以offline 不能read only

undo 表空间不能offline 不能read only

只读表空间的对象可以删除,但是不能被update和insert

数据文件操作

1)修改数据文件为自动扩展

alter database datafile '...........' autoextend on;

2)修改数据文件大小

alter database datafile '...........' resize 1M;

3)添加数据文件

alter tablespace add datafile '.......' size 200M autoextend off;

4)数据文件重命名

a,alter tablespace t01 offline;(数据库在open状态)

b,ho cp /u01/oracle/oradata/orcl/t1.dbf /u01/oracle/oradata/orcl/t11.dbf

c,alter database rename file 'u01/oracle/oradata/orcl/t1.dbf' to '/u01/oracle/oradata/orcl/t11.dbf';

d,alter tablespace t01 online;

如果数据库只在mont状态,那么只要在操作系统级别移动数据文件,执行数据库文件改名,启动数据库即可。

与表空间和数据文件相关的系统视图。

v$tablespace和dba_tablespaces记录表空间的基本信息。

v$datafile和dba_data_files记录数据文件的基本信息。

v$tempfile和dba_temp_files记录临时文件基本信息。

dba_free_space在不考虑可自动扩展的情况下,记录每个表空间中数据文件的可用大小。

  • 26
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lglovegq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值