Escrevi um script para fazer backup de um postgresql usando COPY
e excluir esses registros. Eu usei pg_relation_size
antes e depois de excluir.
- pg_relation_size
- EXCLUIR
- ANÁLISE DE VÁCUO
- pg_relation_size
Mas ambos pg_relation_size
mostram os mesmos resultados. Isso significa que VACUUM ANALYZE
não foi útil?
VACUUM não necessariamente disponibiliza espaço não utilizado para o sistema de arquivos, apenas torna os blocos reutilizáveis para outros INSERTs (ou UPDATEs).
Se não me engano, a única maneira de reduzir ativamente o tamanho do sistema de arquivos seria um
VACUUM FULL
, mas cuidado, pois precisa de um bloqueio exclusivo na (s) tabela (s).Você espera que a tabela não obtenha novas linhas ou atualizações? Porque, se houver novas linhas, não faz sentido tentar reduzir os arquivos fisicamente agora, se eles forem aumentados novamente mais tarde devido à chegada de novas linhas.
a_horse_with_no_name respondeu à pergunta original, deixe-me apenas adicionar um link - se você deseja remover o inchaço da tabela, pode achar isso informativo.