Tempo aproximado para leitura: 00:01:17 min
Dúvida
Como verificar fragmentação de tabelas no Informix?
Ambiente
Framework - Framework (Linha Logix) – Administração Logix – Todas as Versões
Solução
Para solucionar essa dúvida, realize os seguintes passos:
1. Via DBAccess execute o script SQL - Standard Query Language abaixo:
database sysmaster;
output to tabs_frag.txt
select b.tabname,a.ti_nextns,a.ti_nptotal, (a.ti_nptotal * P)/1024 f_ext,
((a.ti_nptotal * P) * 0.10)/1024 n_ext
from systabinfo a,logix@XXXX:systables b
where b.partnum=a.ti_partnum
and a.ti_nextns > 1
and b.tabid > 99
order by 2 desc
Onde :
P = tamanho da página do banco de dados.
Esta informação pode ser obtida com o comando onstat –b.
Estará escrito na última linha o tamanho de buffer size.
XXXX = nome da instância onde está o banco de dados.
2. O resultado apresentado será semelhante ao abaixo:
tabname frm_index_column
ti_nextns 13
ti_nptotal 2444
f_ext 4888,00000000000
n_ext 488,800000000000
Neste caso a tabela frm_index_column esta com 13 fragmentos e deve ser desfragmentada.
0 Comentários