Comment calculer la taille d'une base de données dans Oracle

Les tailles de base de données incluent l'espace physique sur le disque.

Étape 1

Inclut la taille des fichiers de données dans la recherche. La taille totale inclut les tables, les champs, les procédures stockées et les autres objets de la base de données. Calculez la taille de la vue "dba_data_files" comme suit:

SELECT SUM (octets) / 1024/1024/1024 data_size from dba_data_files;

Étape 2

Calculez la taille des fichiers temporaires. Ceux-ci stockent des données pendant le traitement mais ce n'est pas permanent. Calculez la taille du fichier temporaire comme suit:

sélectionnez nvl (somme (octets), 0) / 1024/1024/1024 temp_size à partir de dba_temp_files.

Étape 3

Obtenez la taille du journal de reprise. Ceci stocke toutes les modifications dans la base de données avant d'être appliqué aux données de la base de données actuelle. Cela offre un moyen de stocker la base de données dans son état d'origine avant un extrait conçu pour modifier les informations.

select sum (bytes) / 1024/1024/1024 redo_size à partir de sys.v_ $ log.

Étape 4

Extrayez la taille du fichier de contrôle utilisé par Oracle à l'aide de la vue V $ CONTROLFILE. Cette vue permet d’obtenir des informations sur le schéma de la base de données et les objets qu’elle contient.

L'extrait sélectionné pour obtenir la taille du fichier de contrôle est:

select sum (BLOCK_SIZE * FILE_SIZE_BLKS) / 1024/1024/1024 controlfile_size à partir de v $ controlfile

Étape 5

Combinez les extraits sélectionnés pour calculer la taille de la base de données. Le résultat correspond à la taille totale de la base de données en gigaoctets:

sélectionnez d.data_sizeT.temp_sizeR.redo_sizeC.controlfile_size "Taille de la base de données en Go" à partir de (sélectionnez somme (octets) / 1024/1024/1024 taille_données dans dba_data_files) d, (sélectionnez nvl (somme (octets), 0) / 1024/10 / 1024 temp_size from dba_temp_files) t, (sélectionnez sum (octets) / 1024/1024/1024 redo_size depuis sys.v_ $ log) r, (sélectionnez sum (BLOCK_SIZE * FILE_SIZE_BLKS) / 1024/1024/1024 controlfile_size from v $ controlfile) c;

Cela présentera la taille totale de la base de données au format suivant:

Taille de la base de données en Go

149.58765