PG WORKSHOP

Backup og Restore

PostgreSQL databaser backup- og restore procedurer er:

  • pg_dump
  • pg_restore

Advarsel: HUSK at bruge den rigtige version - ligger i bin-kataloget under installationen

Best practice er at lave separate dumps af hvert schema i en database (og restore dem derfra i korrekt rækkefølge). Årsagerne er:

  • public schemaet vil man normalt ikke tage backup af (Der bør ikke ligge userdata her!)
  • hvis man tager en fuld DB-backup, vil man inkludere PostGIS basis-funktioner, og det giver fejl i forbindelse med restore på en PostGIS enablet database
  • det er hurtigere at lave en selectiv restore (det er ikke altid man har "ødelagt" alle schemaer i en database'

Best practice er at "pakke" backup/restore ind i cmd filer. Eksempel:

pg_dump.exe -f c:\temp\mindb_fot.backup -h pg1.septima.dk -U postgres -v -F t -n fot mindb

Parametre:

  • -f c:\temp\mindb_fot.backup : output filnavn
  • -h pg1.septima.dk : host
  • -U postgres : username
  • -v : verbose mode (detaljer)
  • -F t : format tar
  • -n fot : schemanavn
  • mindb : database
pg_restore.exe -h pg1.septima.dk -U postgres -d mindb -n fot -v c:\temp\mindb_fot.backup

Parametre:

  • -h pg1.septima.dk : host
  • -U postgres : username
  • -d mindb : database
  • -n fot : restore objekter i fot schema
  • -v : verbose mode (detaljer)

For mindre datamængder, kan ”plain” benyttes (så kan man inspicere backupfilen) - ellers benyt Tar (default format)

Brug kommandolinjen (pgAdmin kan hjælpe, men det er svært at styre – låser pgAdmin og manglende logning.