Pular para o conteúdo

Fóruns Banco de dados Oracle Como saber o tamanho de uma base de dados Oracle Como saber o tamanho de uma base de dados Oracle

#97772
Peterson
Participante

    Airton,

    Tenho um script legal para calcular o tamanho das tablespaces (que considero a principal informação quando se está preocupado com o tamanho do banco). Segue abaixo:

    -- Espaço livre dentro de arquivos de dados não-temporários, por tablespace.

    -- Sem argumentos.

    -- 102410481000 = 1048576000 = 1GB para igualar ao OEM

    column free_space_gb format 9999999.999
    column allocated_gb format 9999999.999
    column used_gb format 9999999.999
    column tablespace format a14
    column filename format a36

    SELECT ts.name tablespace, trim(substr(df.name,1,100)) filename, df.bytes/1048576000 allocated_gb,
    ((df.bytes/1048576000)-nvl(sum(dfs.bytes/1048576000),0)) used_gb,
    nvl(sum(dfs.bytes)/1048576000,0) free_space_gb
    FROM v$datafile df
    JOIN dba_free_space dfs ON df.file#=dfs.file_id
    JOIN v$tablespace ts ON df.ts#=ts.ts#
    GROUP BY ts.name, dfs.file_id, df.name, df.file#, df.bytes
    ORDER BY tablespace,filename;

    Espero que ajude! 😉