prompt =========================tamanho total do banco de dados================================
prompt
select sum("TAMANO GB") tama_bd, sum("USADO GB") usado_bd, sum(libre) libre_bd from
(SELECT A.TABLESPACE_NAME, round(A.todo/1024/1024/1024) AS "TAMANO GB", round((A.todo-b.libre)/1024/1024/1024,0) AS "USADO GB",round(B.LIBRE/1024/1024/1024,0) AS LIBRE, ROUND(100*(A.todo-b.libre)/(A.todo),0) "%USO"
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) AS todo FROM DBA_data_files
GROUP BY TABLESPACE_NAME) A, (SELECT TABLESPACE_NAME, SUM(BYTES) AS LIBRE
FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) B
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME(+)
--and A.TABLESPACE_NAME like '%IVR%'
--order by round(B.LIBRE/1024/1024/1024,0) DESC
UNION all
select U.TABLESPACE_NAME, T.TAMANO, U.USADO, T.TAMANO-U.USADO LIBRE, round((100*U.USADO)/(T.TAMANO),0) "%USO"
FROM (SELECT TABLESPACE_NAME, ROUND(SUM(bytes_used)/1024/1024/1024,0) AS USADO
FROM v$temp_space_header
GROUP BY TABLESPACE_NAME) U, (SELECT TABLESPACE_NAME, ROUND(SUM(BYTES)/1024/1024/1024,0) AS TAMANO
FROM DBA_TEMP_FILES
GROUP BY TABLESPACE_NAME) T wHERE u.TABLESPACE_NAME(+)=t.TABLESPACE_NAME)
/
col "Database Size" format a20
col "Free space" format a20
col "Used space" format a20
select round(sum(used.bytes) / 1024 / 1024 / 1024 ) || ' GB' "Database Size"
, round(sum(used.bytes) / 1024 / 1024 / 1024 ) -
round(free.p / 1024 / 1024 / 1024) || ' GB' "Used space"
, round(free.p / 1024 / 1024 / 1024) || ' GB' "Free space"
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
/
No hay comentarios:
Publicar un comentario