ads hat geschrieben:Viele Fragen, noch weniger Daten ...
Läuft Autovacuum überhaupt? (Prozessliste schauen, pg_stat_activity schauen)
Wie ist die komplette Ausgabe von:
- Code: Alles auswählen
SELECT * FROM pg_stat_user_tables WHERE relname = 'deine Tabelle'
Oh, und autovacuum_naptime ist nur die Zeit, die nach einem kompletten Durchlauf bis zum Start in der nächsten Datenbank gewartet wird. Das hat nichts damit zu tun, wie häufig Autovacuum deine Datenbank besucht. Abgesehen davon: für ein System mit vielen Änderungen ist eine Stunde definitiv zu viel - weil jede Datenbank dann nach frühestens 3 Stunden wieder dran kommt.
jao:
hier ist prozessliste per ps -ax
28657 ? Ss 0:00 postgres: logger process
28659 ? Ss 0:00 postgres: writer process
28660 ? Ss 0:00 postgres: stats collector process
28780 ? Ss 4:49 postgres: bfozl bfozl 10.99.24.27(48164) idle in transaction
Ausgabe von pg_stat_activity;
bfozl=> select * from pg_stat_activity;
datid | datname | procpid | usesysid | usename | current_query | waiting | query_start | backend_start | client_addr | client_port
-------+---------+---------+----------+---------+---------------------------------+---------+-------------------------------+-------------------------------+-------------+-------------
16600 | bfozl | 28768 | 16602 | bfozl | select * from pg_stat_activity; | f | 2010-05-05 10:28:26.61604+02 | 2010-05-05 10:14:50.609536+02 | | -1
16600 | bfozl | 28780 | 16602 | bfozl | <IDLE> in transaction | f | 2010-05-05 10:28:19.648345+02 | 2010-05-05 10:14:58.247106+02 | 10.99.24.27 | 48164
(2 rows)
Ich führe jetzt Operation "Daten löschen"
vor daten löschen
n_tup_ins | n_tup_upd | n_tup_del
--------------------------------+-----------+--------- -+----------+----------+---------------+-----------+-----------+-----------+-------------------------------+-------------------------------+-------------------------------+-------------------------------
pfpl_zug_bst | 2729534 | 69 | 581987
tfpl_zug_bst | 2885126 | 0 | 1885409
pfpl_wartebedingung | 6970381 | 1237993 | 1252844
nach Daten löschen
select * from pg_stat_user_tables where relname like 'pfpl_zug_bst';
relid | schemaname | relname | seq_scan | seq_tup_read | idx_scan | idx_tup_fetch | n_tup_ins | n_tup_upd | n_tup_del | last_vacuum | last_autovacuum | last_analyze | last_autoanalyze
-------+------------+--------------+----------+--------------+----------+---------------+-----------+-----------+-----------+-------------------------------+-------------------------------+-------------------------------+-------------------------------
16715 | bfozl | pfpl_zug_bst | 4571 | 199015366 | 7471447 | 6940015 | 2780442 | 69 | 632895 | 2010-05-05 10:40:35.613572+02 | 2010-03-29 12:55:18.479142+02 | 2010-05-05 10:40:35.613572+02 | 2010-03-29 12:55:18.479142+02
(1 row)
select * from pg_stat_user_tables where relname like 'pfpl_wartebedingung';
relid | schemaname | relname | seq_scan | seq_tup_read | idx_scan | idx_tup_fetch | n_tup_ins | n_tup_upd | n_tup_del | last_vacuum | last_autovacuum | last_analyze | last_autoanalyze
-------+------------+---------------------+----------+--------------+----------+---------------+-----------+-----------+-----------+-------------------------------+-------------------------------+-------------------------------+-------------------------------
16722 | bfozl | pfpl_wartebedingung | 2057 | 317532069 | 2263003 | 2330043 | 7086029 | 1237993 | 1368492 | 2010-05-04 10:40:33.826308+02 | 2010-05-03 13:39:23.150559+02 | 2010-05-04 10:40:33.826308+02 | 2010-05-03 13:39:23.150559+02
Differenz bei n_tup_del der Tabelle zug_bst vor und nach dem Löschen beträgt 50808
Differenz bei n_tup_del der Tabelle pfpl_wartebeidnung vor und nach dem Löschen beträgt 115648
Parameter autovacuum_analyze_threshold steht auf 50 und autovacuum_vacuum_threshold auf 100.
Manuelle vacuum analyze wurde gestern durchgeführt. Die Opertaion Löschen führe ich aber heute und wieder kein autovacuum