您的位置:首页 > 数据库 > Oracle

oracle 表空间大小的查看与修改

2015-10-21 17:11 531 查看

一、什么是表空间

http://www.cnblogs.com/fnng/archive/2012/08/12/2634485.html

二、表空间大小的查看

2.1)分配给用户表的物理空间数量,而不管空间是否被使用。
select SEGMENT_NAME,Sum(bytes)/1024/1024 as MB
from User_Extents
whereSEGMENT_TYPE='TABLE' or SEGMENT_TYPE='INDEX'
group
by SEGMENT_NAME
order
by MB desc;

2.2)
 查看系统中所有表空间的总空间、可用空间、已用空间及利用率
 
   select t1,z*(1.0)/1024/1024,(z-s)/1024/1024,s/1024/1024,ROUND((z-s)/z*100,2)
from 
(select
tablespace_name t1,Sum(bytes) s from DBA_FREE_SPACE Group by
tablespace_name),
(select
tablespace_name t2,Sum(bytes) z from DBA_DATA_FILES  Group by tablespace_name)
where
t1 = t2;

三、表空间大小的修改

查看是否可自动扩展
select TABLESPACE_NAME,AUTOEXTENSIBLE,INCREMENT_BY from DBA_DATA_FILES;

如果AUTOEXTENSIBLE为YES的话,则说明表空间可自动扩展,以INCREMENT_BY的大小增长
如果AUTOEXTENSIBLE为NO的话,则可用以下四种方式修改表空间的大小:
3.1)给表空间增加数据文件
ALTER TABLESPACE app_data  ADD DATAFILE
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' SIZE 50M;
 
3.2)新增数据文件,并且允许数据文件自动增长
ALTER TABLESPACE app_data ADD DATAFILE
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP04.DBF' SIZE 50M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;
 
3.3)允许已存在的数据文件自动增长
ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF'
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;
 
3.4)改变已存在数据文件的大小
ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP02.DBF'
RESIZE 100M;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle 表空间