Dba file

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Script SQL*Plus de diagnostic
Domaine Administration (fichiers de données)
Voir aussi Dba files all · Dba file space usage · Dba file use

Dba_file liste tous les fichiers de données et fichiers temporaires (tempfiles) de la base, avec leur tablespace, leur taille, et leurs paramètres d'extension automatique (AUTOEXTEND), à partir de DBA_DATA_FILES et DBA_TEMP_FILES.

Il donne une vue d'ensemble « inventaire » des fichiers physiques qui composent la base, sans le détail de l'occupation réelle (pour cela, voir Dba file space usage).

Script

SET TERMOUT OFF
COLUMN current_instance NEW_VALUE current_instance NOPRINT
SELECT RPAD(instance_name, 17) current_instance FROM v$instance;
SET TERMOUT ON

PROMPT
PROMPT +------------------------------------------------------------------------+
PROMPT | Rapport   : Fichiers de données                                        |
PROMPT | Instance  : &current_instance                                         |
PROMPT +------------------------------------------------------------------------+

SET ECHO      OFF
SET FEEDBACK  6
SET HEADING   ON
SET LINESIZE  180
SET PAGESIZE  50000
SET VERIFY    OFF

CLEAR COLUMNS
CLEAR BREAKS
CLEAR COMPUTES

COLUMN tablespace     FORMAT a30               HEADING 'Tablespace'
COLUMN filename       FORMAT a75               HEADING 'Fichier'
COLUMN filesize       FORMAT 9,999,999,999,999 HEADING 'Taille'
COLUMN autoextensible FORMAT a4                HEADING 'Auto'
COLUMN increment_by   FORMAT 999,999,999,999   HEADING 'Pas'
COLUMN maxbytes       FORMAT 999,999,999,999   HEADING 'Max'

BREAK ON report

COMPUTE sum OF filesize ON report

SELECT /*+ ordered */
    d.tablespace_name        tablespace
  , d.file_name              filename
  , d.bytes                  filesize
  , d.autoextensible         autoextensible
  , d.increment_by * e.value increment_by
  , d.maxbytes               maxbytes
FROM
    dba_data_files d
  , v$datafile     v
  , (SELECT value FROM v$parameter WHERE name = 'db_block_size') e
WHERE
    d.file_name = v.name
UNION
SELECT
    d.tablespace_name        tablespace
  , d.file_name              filename
  , d.bytes                  filesize
  , d.autoextensible         autoextensible
  , d.increment_by * e.value increment_by
  , d.maxbytes               maxbytes
FROM
    dba_temp_files d
  , (SELECT value FROM v$parameter WHERE name = 'db_block_size') e
ORDER BY
    1, 2
/

Colonnes / sortie

  • Auto : YES/NO — le fichier peut-il s'étendre automatiquement quand il est plein ?
  • Pas (increment_by) et Max (maxbytes) : incrément d'extension et taille plafond, exprimés en octets (le script convertit le nombre de blocs en octets via db_block_size).

Voir aussi

  • Dba files all — version étendue incluant aussi redo logs et fichiers de contrôle.
  • Dba file space usage — occupation réelle (espace utilisé/libre) de chaque fichier.
  • Dba file use — vue combinée fichiers de données + redo + contrôle + archivage.