Parallelní vacuum vybrané tabulky

Z PostgreSQL
Verze z 14. 7. 2015, 18:17, kterou vytvořil Pavel (diskuse | příspěvky) (Založena nová stránka s textem „Na serveru jsem zjistil bobtnání tabulek pg_attribute napříč databázemi. Následující skript provede VACUUM FULL této tabulky, pokud tato tabulka…“)

(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání

Na serveru jsem zjistil bobtnání tabulek pg_attribute napříč databázemi. Následující skript provede VACUUM FULL této tabulky, pokud tato tabulka má více než 100MB. Díky xargs beží VACUUM paralelně.

for db in `psql -At -c "select datname from pg_database where datname not in ('template0','template1')"`; 
do 
psql -At -c "select current_database() where pg_table_size('pg_attribute') > 100 * 1024 * 1024" $db; 
done | xargs -P 3 -I % psql % -c "vacuum full  verbose analyze pg_attribute"