Database 在Oracle中查找数据库的大小

Database 在Oracle中查找数据库的大小,database,oracle,Database,Oracle,我有一个名为“我的企业数据”的数据库。我需要找到它在磁盘上所占的大小 我怎么知道呢 根据My_Enterprise_数据运行的查询,从用户_段中选择sum(bytes)/1024/1024作为“大小(MB)”是否正确?下面将显示oracle使用的数据文件: select TABLESPACE_NAME "Tablspace", FILE_NAME "Filename", BYTES/1024/1024 "Size MB", MAXBYTES/1024/1024 "Maximum

我有一个名为“我的企业数据”的数据库。我需要找到它在磁盘上所占的大小

我怎么知道呢


根据My_Enterprise_数据运行的查询,
从用户_段中选择sum(bytes)/1024/1024作为“大小(MB)”是否正确?

下面将显示oracle使用的数据文件:

select TABLESPACE_NAME "Tablspace",  
 FILE_NAME "Filename",  
 BYTES/1024/1024 "Size MB", 
 MAXBYTES/1024/1024 "Maximum Size MB", 
 AUTOEXTENSIBLE "Autoextensible"
from SYS.DBA_DATA_FILES

然后可以查找My_Enterprise_数据模式使用的表空间。oracle数据库由数据文件、重做日志文件、控制文件和临时文件组成。 数据库的大小实际上意味着所有这些文件的总大小

select 
( select sum(bytes)/1024/1024/1024 data_size from dba_data_files ) +
( select nvl(sum(bytes),0)/1024/1024/1024 temp_size from dba_temp_files ) +
( select sum(bytes)/1024/1024/1024 redo_size from sys.v_$log ) +
( select sum(BLOCK_SIZE*FILE_SIZE_BLKS)/1024/1024/1024 controlfile_size from v$controlfile) "Size in GB"
from
dual

太好了。。。dba_段给出了Oracle

查找数据库占用的实际空间

从dba_段中选择总和(字节)/1024/1024/1024

SELECT a.data_size + b.temp_size + c.redo_size + d.controlfile_size 
"total_size in GB" 
FROM (SELECT SUM (bytes) / 1024 / 1024/1024 data_size FROM dba_data_files) a, 
(SELECT NVL (SUM (bytes), 0) / 1024 / 1024/1024 temp_size 
FROM dba_temp_files) b, 
(SELECT SUM (bytes) / 1024 / 1024/1024 redo_size FROM sys.v_$log) c, 
(SELECT SUM (BLOCK_SIZE * FILE_SIZE_BLKS) / 1024 / 1024/1024 
controlfile_size 
FROM v$controlfile) d;