Chinaunix

标题: Oracle怎么查看表空间为自增的?????? [打印本页]

作者: ttl289    时间: 2011-03-04 16:47
标题: Oracle怎么查看表空间为自增的??????
用命令或plsql??
作者: ttl289    时间: 2011-03-04 16:58
select tablespace_name,block_size,status,segment_space_management from dba_tablespaces;

是这命令吗????
作者: miloluo    时间: 2011-03-04 17:04
  1. select TABLESPACE_NAME, AUTOEXTENSIBLE from dba_data_files;
复制代码

作者: duolanshizhe    时间: 2011-03-04 17:09
表空间没有自增属性,而表空间中的数据文件是可以自增的,所以间接达到表空间自增。3楼正解!由于单个表空间可能包含多个数据文件,可能显示上有点儿啰嗦,看下面的吧:

  1. select distinct TABLESPACE_NAME, AUTOEXTENSIBLE from dba_data_files;
复制代码

作者: miloluo    时间: 2011-03-04 17:12
回复 4# duolanshizhe

惭愧,googling出来的,测试了下,就贴出来了。
多谢duolanshizhe讲解,受教了。。。
作者: ttl289    时间: 2011-03-04 17:43
感谢
经过查看发现我的oracle的确是自增的(之前是我自己设置的自增),本来原有数据文件是1G,后来由于需要我设置了自增表空间,自增到26G后开始报错,再之后又由于需要,这个文件自增到21G又不能自增了,请问,这是什么原因??

是不是我只能继续在增加文件了?
作者: alongx    时间: 2011-03-04 18:55
数据文件最大为30g   可以设置多个数据文件
作者: duolanshizhe    时间: 2011-03-10 08:31
7楼的说法不太准确,容易误导人!

在small tablespace的情况下,数据文件的大小取决于数据块的大小。
这个限制是:每个数据文件最多只能包含2^22-1个数据块。
这个限制是由于Oracle的Rowid中使用22位来代表Block号,这22位最多只能代表2^22-1个数据块。

为了扩展数据文件的大小,Oracle10g中引入了大文件表空间,在大文件表空间下,Oracle使用32位来代表Block号,也就是说,在新的技术下,大文件表空间下每个文件最多可以容纳4G个Block。
那么也就是说当Block_size为2k时,数据文件可以达到8T 。
当block_size为32K时,数据文件可以达到128T。
作者: www_xylove    时间: 2011-03-13 23:39
dba_data_files数据字典的字段autoextensible记录了数据文件是否是自动扩展还是手动扩展的

select file_name,bytes/1024/1024,autoextensible from dba_data_files;

FILE_NAME                      BYTES/1024/1024         AUTOEXTENSIBLE
E:\ORADATA\WESTDB\SYSTEM01.DBF        1024        NO
E:\ORADATA\WESTDB\UNDOTBS01.DBF        580        NO
E:\ORADATA\WESTDB\INDX01.DBF        5        NO
E:\ORADATA\WESTDB\TOOLS01.DBF        5        NO
E:\ORADATA\WESTDB\USERS01.DBF        1024        YES
E:\E:\ORADATA\WESTDB\UNDOTBS03.DBF        100        NO




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2