什么是使用Oracle数据库空间? (“ORA-12953:...超过允许的最大数据库大小”)

时间:2012-05-31 05:29:12

标签: oracle oracle-xe oracle11gr2

我只是在我的oracle数据库中有物化视图(小行数),除了我的数据库之外什么都没有进行编译:

Error report:
SQL Error: ORA-12953: The request exceeds the maximum allowed database size of 11 GB

select sum(size_in_mb) from 
(
SELECT owner,
       segment_name,
       segment_type,
       sum(bytes)/1024/1024 size_in_mb
  FROM dba_segments
 WHERE owner NOT IN ('SYS','SYSTEM')
 GROUP BY owner, 
          segment_name,
          segment_type
 ORDER BY SUM(bytes)/1024/1024
 );

如何找到在oracle中使用多少空间?

2 个答案:

答案 0 :(得分:5)

我从错误中假设您使用的是数据库的快速版本。

SELECT owner,
       segment_name,
       segment_type,
       sum(bytes)/1024/1024 size_in_mb
  FROM dba_segments
 WHERE owner NOT IN ('SYS','SYSTEM')
 GROUP BY owner, 
          segment_name,
          segment_type
 ORDER BY SUM(bytes)/1024/1024

将显示除SYSSYSTEM以外的用户所拥有的对象的大小,以MB的大小排序。

答案 1 :(得分:3)

有几个DBA视图,它们关注“空间”的几个不同方面:

* dba_free_space

* dba_data_files

* dba_tablespaces

以下是一些简单且有用的脚本:

我肯定会看看这些脚本: