- Oracle l'essentiel
- Installation d'Oracle
- Les Scripts
Scripts Oracle état d'une base de donnée suite
Précédement nous avons regardé les paramètres de gestion de la base oracle, restons tout aussi simple en recherchant l'occupation de la base oracle (espace disque). Inventaire des fichiers usités et leur taille.
Espace usité par la base oracle
col Used heading 'Espace utilisé en GB' format a20
col Free heading 'Espace libre en GB' format a10
SELECT round(sum(used.bytes) / 1024 / 1024/1024 ) Used,
round(free.p / 1024 / 1024/1024) Free
from (select bytes from v$datafile
union all
select bytes from v$tempfile
union all
select bytes from v$log) used, (select sum(bytes) as p from dba_free_space) free
group by free.p;
Information sur les fichiers de la base de donnée
col Filename heading 'Nom du fichier' format a20
col Location heading 'Répertoire' format a10
SELECT Filename,
Location
from (select 'Archived Log Directory' as Filename, value as Location
from v$parameter where name = 'log_archive_dest'
UNION
select 'Control Files' as Filename, value as Location from v$parameter where name = 'control_files'
UNION
select 'Datafile' as Filename, name as Location from v$datafile
UNION
select 'LogFile Member' as Filename, member as Location from v$logfile);
Fichier de données de la base
col Name du fichier heading 'Parameter' format a20
col Total heading 'Espace total en KB' format a10
col Usite heading 'Espace utilisé en KB' format a10
col Free heading 'Espace libre en KB' format a10
SELECT SUBSTR (df.NAME, 1, 40) Name,
df.bytes / 1024 / 1024 Total,
((df.bytes / 1024 / 1024) - NVL (SUM (dfs.bytes) / 1024 / 1024, 0)) Usite,
NVL (SUM (dfs.bytes) / 1024 / 1024, 0) Free
FROM v$datafile df, dba_free_space dfs
WHERE df.file# = dfs.file_id(+)
GROUP BY dfs.file_id, df.NAME, df.file#, df.bytes
ORDER BY SUBSTR (df.NAME, 1, 40);