wal_level
Requires a restarttuned by pgconfiguratorenum: minimal / replica / logical
How much information is written to WAL — gates replication and PITR.
What pgconfigurator would set
32 GB · 8 vCPU · NVMe · OLTP
Computing…
Tune for your exact server → /tunecomputed in your browser · nothing uploaded
What it does
wal_level decides how much detail WAL records carry. 'minimal' logs only what's needed for crash recovery; 'replica' (the default) adds what's needed for physical replication and point-in-time recovery; 'logical' adds row-level information for logical replication and change-data-capture.
How to tune it
Use 'replica' if you have (or might add) streaming standbys or take base backups for PITR — almost everyone. Use 'logical' only if you need logical replication or CDC (e.g. publications, Debezium); it writes a bit more WAL. 'minimal' is rare and rules out replicas. Changing it needs a restart.
FAQ
- Do I need wal_level = logical?
- Only for logical replication or change-data-capture (logical decoding). For ordinary streaming replicas and PITR, 'replica' is enough and writes less WAL.