Bonjour,
ma question est: s'il y a des lignes en double dans cette vue, dois je faire la somme de la colonne BYTES ou prendre le maximum pour un tablespace pour avoir l'espace libre.
merci
92ilinux.
Bonjour,
ma question est: s'il y a des lignes en double dans cette vue, dois je faire la somme de la colonne BYTES ou prendre le maximum pour un tablespace pour avoir l'espace libre.
merci
92ilinux.
la somme bien sûre! et s'il n'y a aucune ligne, alors c'est que le tablespace est plein !
bonjour,
dba_free_space comporte plusieurs enregistrement par tablespace et cela dépend du nombre de datafiles que comporte ce tablespace(voir dba_data_files),par contre cette vue (dba_free_space) n'affiche que les tablespaces où il reste de l'espace libre.
un tablespace totalement saturé n'est pas remonté par cette vue donc il est nécessaire de faire une jointure externe avec la vue all_tablespaces ou dba_tablespaces.
j'espère que j'ai pas tors et bon courage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT T.TABLESPACE_NAME,nvl(sum(F.bytes/1024/1024),0) "FREE_SPACE(en Mo)" FROM dba_free_space F,dba_tablespaces T WHERE F.TABLESPACE_NAME=T.TABLESPACE_NAME(+) GROUP BY T.TABLESPACE_NAME ORDER BY nvl(sum(F.bytes/1024/1024),0)
pourquoi il y a plusieurs lignes pour certains tablespaces alors que tous mes tablespaces comportent seulement un fichier datafile.
c'est le nombre d'extents consécutif.Envoyé par learn
Si tu as un beaucoup de petits blocs, tu auras peut-être quand même une erreur CANNOT ALLOCATE EXTENT.
Plus ton tablespace est fragmenté, plus les blocs sont nombreux et petits
OK?
merci.
Salut
La jointure externe est à faire sur la vue dba_free_space F
@+
pour info, ces extents peuvent être fusionnés via la commande COALESCEEnvoyé par laurentschneider
Partager