Oracle, Check free/used space per tablespace

Esta consulta permite ver el espacio libre y el ocupado en oracle.
[sourcecode language=»sql»]
SELECT
df.tablespace_name «Tablespace»,
df.bytes / (1024 * 1024) «Tamaño (Mb)»,
SUM(fs.bytes) / (1024 * 1024) «Libre (Mb)»,
Nvl(Round(SUM(fs.bytes) * 100 / df.bytes),1) «% Libre»,
Round((df.bytes – SUM(fs.bytes)) * 100 / df.bytes) «% Usado»
FROM
dba_free_space fs,
(
SELECT
tablespace_name,SUM(bytes) bytes
FROM
dba_data_files
GROUP BY
tablespace_name
) df
WHERE
fs.tablespace_name (+) = df.tablespace_name
GROUP BY
df.tablespace_name,df.bytes
UNION ALL
SELECT
df.tablespace_name tspace,
fs.bytes / (1024 * 1024),
SUM(df.bytes_free) / (1024 * 1024),
Nvl(Round((SUM(fs.bytes) – df.bytes_used) * 100 / fs.bytes), 1),
Round((SUM(fs.bytes) – df.bytes_free) * 100 / fs.bytes)
FROM
dba_temp_files fs,
(
SELECT
tablespace_name,bytes_free,bytes_used
FROM
v$temp_space_header
GROUP BY
tablespace_name,bytes_free,bytes_used
) df
WHERE
fs.tablespace_name (+) = df.tablespace_name
GROUP BY
df.tablespace_name,fs.bytes,df.bytes_free,df.bytes_used
ORDER BY
5 DESC;
[/sourcecode]

Comments are closed.

Google+