Vous avez souvent besoin de connaître la taille d'une base de données Oracle pour la déplacer d'un serveur à un autre. Ou simplement pour savoir si votre exportation ou autre va prendre beaucoup d'espace et de temps.
Dans cet article, je vous montre une méthode simple pour calculer la taille de votre base de données Oracle.
Taille des fichiers de données Oracle en Go
select sum(bytes)/(1024*1024*1024) G
from dba_data_files;
Taille des fichiers tempfiles Oracle en Go
select sum(bytes)/(1024*1024*1024) G
from dba_temp_files;
Taille des redo logs Oracle en Go
Ne prend pas en compte les fichiers redolog en miroir :
select sum(bytes)/(1024*1024*1024) G
from v$log;
Taille de l'espace occupé par vos fichiers de données Oracle
Vous obtiendrez ainsi l'espace total utilisé dans la base de données en Go.
select sum(bytes)/(1024*1024*1024) G
from dba_segments;
Taille totale de la base de données Oracle
Il faut également tenir compte des fichiers de contrôle et des fichiers redolog en miroir.
select a.data_size+b.temp_size+c.redo_size+d.cont_size "total_size"
from ( select sum(bytes) data_size
from dba_data_files ) a,
( select nvl(sum(bytes),0) temp_size
from dba_temp_files ) b,
( select sum(bytes) redo_size
from sys.v_$logfile lf, sys.v_$log l
where lf.group# = l.group#) c,
( select sum(block_size*file_size_blks) cont_size
from v$controlfile ) d;