Si la console Enterprise Manager de Oracle 11g est plutôt explicite à ce sujet, l’EM version Oracle 12c n’affiche pas les mêmes informations visuelles de l’utilisation des tablespaces. Ces espaces alloués peuvent être remplis ou vides, selon les bases montées à l’intérieur. Il est toujours intéressant de savoir où en sont les espaces de stockage, pour savoir s’il faut en agrandir un tablespace, mieux gérer son espace alloué ou en créer un nouveau.

Oracle 11g ou 12c, voire 10g, on peut voir l’utilisation des tablespaces grâce à une requête SQL Plus pour éviter l’utilisation de la console graphique Enterprise Manager, plus visuelle mais pas présente sur toutes les versions du SGBD Oracle.

 

Voir l’utilisation des tablespaces sous Oracle 11g (EM)

1. Ouvrir la console Enterprise Manager du serveur Oracle 11g, par exemple https://srvoracle11g:1158/em

2. Se connecter en compte sys ou équivalent.

3. Aller à l’onglet Serveur, Tablespaces (dans le groupe Stockage) :

tutoriel Oracle commande requete taille tablespace usage

4. Un tableau résume les tablespaces avec la taille pré-allouée, l’espace utilisé et l’espace encore libre dans le fichier alloué. Dans cet exemple, le tablespace USERS est plein à 92,2% mais il reste presque 18Go de libre sur les 228Go alloués.

tutoriel Oracle commande requete taille tablespace usage

 

Requête pour voir l’utilisation des tablespaces sous Oracle

1. La console SQL Plus permet de voir la même information, peu importe la version du serveur Oracle (10g, 11g, 12c). Se connecter avec un compte sys ou équivalent (connect).

2. Copier / coller la requête suivante :

select T1.TABLESPACE_NAME,
T1.BYTES / 1024 / 1024 as "bytes_used (Mb)",
T2.BYTES / 1024 / 1024 as "bytes_free (Mb)",
T2.largest /1024 /1024 as "largest (Mb)",
round(((T1.BYTES-T2.BYTES)/T1.BYTES)*100,2) percent_used
from
(
select TABLESPACE_NAME,
sum(BYTES) BYTES
from dba_data_files
group by TABLESPACE_NAME
)
T1,
(
select TABLESPACE_NAME,
sum(BYTES) BYTES ,
max(BYTES) largest
from dba_free_space
group by TABLESPACE_NAME
)
T2
where T1.TABLESPACE_NAME=T2.TABLESPACE_NAME
order by ((T1.BYTES-T2.BYTES)/T1.BYTES) desc ;

tutoriel Oracle commande requete taille tablespace usage

Cette longue requête est aussi disponible dans ce fichier texte pour éviter les problèmes de copier/coller.


Télécharger “Oracle – Utilisation des tablespaces” oracle-tablespace-used.txt – Téléchargé 82 fois – 519 B

3. Le résultat s’affiche sous forme d’un tableau. On retrouve les quasi 18Go de libre sur 228Go de notre exemple précédent en console Enterprise Manager.