pg_dump[all]
✔ Creates logical
backup
✔ flexible
✔ no down time required
✔ minimal impact
❌ impractical for
large databases
Slide 19
Slide 19 text
$ pg_dump \
--format=custom \
--exclude-table-data=stats \
--compress=9 \
--jobs=4 \
${DB_NAME}.pg_dump
$ # Repeat for all Databases
Slide 20
Slide 20 text
$ pg_restore \
--jobs=4 \
--dbname=${DB_NAME} \
/path/to/backup.pg_dump
$ # Get a cup of coffee
Slide 21
Slide 21 text
hot standby
✔ Continuous
✔ use them to distribute
read load
✔ good for fast failover
❌ only protects
against hardware
failure
❌ requires at least one
more server
Slide 22
Slide 22 text
# In postgresql.conf:
wal_level = hot_standby
# Set these to something > 0
max_wal_senders = 5
wal_keep_segments = 64
$ pg_ctl start
LOG: entering standby mode
... then some time later ...
LOG: consistent recovery state reached
LOG: database system is ready to
accept read only connections