管理对象空间——使用存储参数和显示区信息


对于本地表空间来说,使用存储参数initial 可以确定段的初始化尺寸,而存储参数next,minextents,maxextents,pctincrease是为了与早期版本兼容而保留的,但这些存储参数没有实际意义。而对于字典管理表空间来说,存储参数initial,next,pctincrease,minextents,maxextents则可以确定区尺寸,初始区个数,最大区个数。

1.在本地管理表空间上使用initial参数

当本地管理表空间上建立数据对象时,通过使用initial参数和区尺寸可以确定段的初始尺寸。

例子:建立区尺寸128k的本地管理表空间data07,在该表空间上建立表t1,并显示表段尺寸为例。

create tablespace data07 datafile size 10m uniform size 128k;
create table t1(cola int) tablespace data07
storage (initial 500k);
select extents,bytes from dba_segments where segment_name='T1';

2.在字典管理表空间上使用存储参数

例子:建立字典管理表空间data08,在该表空间上建立表t2,并显示表段t2尺寸:

create tablespace data08 datafile size 10m
extent management dictionary default storage(
initial 40k next 80k minextents 2
maxextents 100 pctincrease 50);
create table t2(cola int ) tablespace data08
storage (next 40k minextents 4)
select extents,bytes from dba_segments where segment_name='T2';

 3.显示已分配区

通过查询数据字典视图dba_extents,可以显示已


分配区的详细信息。

例子:显示段t2的区编号,所载数据文件编号,区起始编号,区尺寸。

select extent_id,file_id,block_id,bytes from dba_extents
where owner='SYS'  and segment_name='T2';


 EXTENT_ID    FILE_ID   BLOCK_ID      BYTES
---------- ---------- ---------- ----------
         0         12        256      65536

4.显示空闲空间

通过查询数据字典视图dba_free_space,可以显示表空间的空闲空间。

例子:显示表空间data08的剩余空间:

select sum(bytes) from dba_free_space
where tablespace_name='DATA02';

SUM(BYTES)
----------
   9437184


原文地址:https://www.cnblogs.com/zhaojiedi1992/p/oracle11g_sql_0056.html