Replikationsverzögerung anzeigen
PostgreSQLReplikationBefehl
SELECT client_addr, state, sent_lsn, replay_lsn, pg_wal_lsn_diff(pg_current_wal_lsn(), replay_lsn) AS replay_lag_bytes, write_lag, flush_lag, replay_lag FROM pg_stat_replication;Was es tut
Zeigt auf der Primary für jeden Standby den Replay-Abstand in Bytes zur aktuellen WAL-Position der Primary sowie Write-/Flush-/Replay-Lag.
Wann einsetzen
Um zu überwachen, wie weit die Streaming-Replikation zurückliegt (auf der Primary ausführen).
Vorsicht
Für die Verzögerung in Sekunden auf dem Standby: SELECT now() - pg_last_xact_replay_timestamp(); dieser Wert wächst auch, wenn auf der Primary nicht geschrieben wird, daher zusammen mit dem LSN-Abstand interpretieren. Ein leeres Ergebnis bedeutet, dass kein Standby verbunden ist.
Verwandte Einträge
- Physische Replica aufbauen (pg_basebackup)
- Replica zur Primary hochstufen (Promote)
- Replication Slot anlegen und löschen
- Publication und Subscription für logische Replikation einrichten
- Standby manuell konfigurieren (standby.signal + primary_conninfo)
- WAL-Empfangs- und Replay-Verzögerung auf dem Standby überwachen (pg_stat_wal_receiver)