Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Motta

[Resolvido] Alguns Scripts de espaço

Recommended Posts

-- ESPAÇO LIVRE NAS TABLESPACES

SELECT TABLESPACE_NAME ,

SUM(BYTES) / 1024 ESPACO_LIVRE_EM_KBYTES

FROM DBA_FREE_SPACE

GROUP BY CUBE(TABLESPACE_NAME);

 

-- ESPAÇO OCUPADO NAS TABLESPACES

SELECT TABLESPACE_NAME ,

SUM(BYTES) / 1024 ESPACO_OCUPADO_EM_KBYTES

FROM DBA_SEGMENTS

GROUP BY CUBE (TABLESPACE_NAME);

 

-- ESPAÇO OCUPADO PELAS TABELAS NAS TABLESPACES (POR TABELA)

SELECT OWNER ,

TABLE_NAME ,

TABLESPACE_NAME ,

NUM_ROWS NUMERO_DE_LINHAS ,

AVG_ROW_LEN TAMANHO_MEDIO_DA_LINHA ,

NUM_ROWS * AVG_ROW_LEN ESPACO_OCUPADO_POR_DADOS ,

BLOCKS BLOCOS_OCUPADOS ,

EMPTY_BLOCKS BLOCOS_VAZIOS ,

BLOCKS + EMPTY_BLOCKS BLOCOS_TOTAL ,

BLOCKS * 8 BLOCOS_OCUPADOS_KB , -- DB_BLOCK_SIZE = 8K

EMPTY_BLOCKS * 8 BLOCOS_VAZIOS_KB ,

(BLOCKS + EMPTY_BLOCKS) * 8 BLOCOS_TOTAL_KB

FROM DBA_TABLES;

 

-- ESPAÇO OCUPADO PELAS TABELAS NAS TABLESPACES (POR TABLESPACE)

SELECT OWNER ,

TABLESPACE_NAME ,

SUM(NUM_ROWS) NUMERO_DE_LINHAS ,

SUM(AVG_ROW_LEN) TAMANHO_MEDIO_DA_LINHA ,

SUM(NUM_ROWS * AVG_ROW_LEN) ESPACO_OCUPADO_POR_DADOS ,

SUM(BLOCKS) BLOCOS_OCUPADOS ,

SUM(EMPTY_BLOCKS) BLOCOS_VAZIOS ,

SUM(BLOCKS + EMPTY_BLOCKS) BLOCOS_TOTAL ,

SUM(BLOCKS) * 8 BLOCOS_OCUPADOS_KB , -- DB_BLOCK_SIZE = 8K

SUM(EMPTY_BLOCKS) * 8 BLOCOS_VAZIOS_KB ,

SUM(BLOCKS + EMPTY_BLOCKS) * 8 BLOCOS_TOTAL_KB

FROM DBA_TABLES

GROUP BY CUBE (OWNER,TABLESPACE_NAME);

 

 

-- DISTRIBUIÇÃO DE OBJETOS DO USUÁRIO OWNER PELAS TABLESPACES

SELECT TABLESPACE_NAME ,

SEGMENT_TYPE TIPO ,

COUNT(*) QUANT

FROM DBA_SEGMENTS

WHERE OWNER = 'OWNER'

GROUP BY CUBE (TABLESPACE_NAME ,

SEGMENT_TYPE) ;

 

 

 

-- TABELAS QUE PRECISARÃO DE MAIS ESPAÇO EM CASO DE CRESCIMENTO DE 30%

SELECT OWNER ,

TABLE_NAME ,

TABLESPACE_NAME ,

TO_CHAR((((NUM_ROWS * AVG_ROW_LEN)*1.3) -

((BLOCKS + EMPTY_BLOCKS) * 8192))/1024,'999999999.9') DEFICIT_KB ,

NUM_ROWS NUMERO_DE_LINHAS ,

AVG_ROW_LEN TAMANHO_MEDIO_DA_LINHA ,

NUM_ROWS * AVG_ROW_LEN ESPACO_OCUPADO_POR_DADOS ,

BLOCKS BLOCOS_OCUPADOS ,

EMPTY_BLOCKS BLOCOS_VAZIOS ,

BLOCKS + EMPTY_BLOCKS BLOCOS_TOTAL ,

BLOCKS * 8 BLOCOS_OCUPADOS_KB , -- DB_BLOCK_SIZE = 8K

EMPTY_BLOCKS * 8 BLOCOS_VAZIOS_KB ,

(BLOCKS + EMPTY_BLOCKS) * 8 BLOCOS_TOTAL_KB

FROM DBA_TABLES

WHERE ((NUM_ROWS * AVG_ROW_LEN)*1.3) >

((BLOCKS + EMPTY_BLOCKS) * 8192)

AND OWNER = 'OWNER'

ORDER BY ((NUM_ROWS * AVG_ROW_LEN)*1.3) -

((BLOCKS + EMPTY_BLOCKS) * 8192) DESC;

 

-- TOTAL DEFICIT EM CASO DE CRESCIMENTO DE 30%

 

SELECT SUM((((NUM_ROWS * AVG_ROW_LEN)*1.3) -

((BLOCKS + EMPTY_BLOCKS) * 8192))/1024) DEF

FROM DBA_TABLES

WHERE ((NUM_ROWS * AVG_ROW_LEN)*1.3) >

((BLOCKS + EMPTY_BLOCKS) * 8192)

AND OWNER = 'OWNER'

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.