تێپەڕبوون بۆ ناوەڕۆکی سەرەکی

PostgreSQL backup en restore (Fase 1 MVP)

Doel: bewijs dat je data kunt terugzetten (RPO/RTO worden later strakker gezet).

Vereisten

  • DATABASE_URL of host/poort/user/wachtwoord van de Postgres die OmniTrack gebruikt.
  • pg_dump en psql geïnstalleerd (PostgreSQL client tools).

Logische dump (aanbevolen voor kleinere DB’s)

# Eén bestand, custom format (compressie + restore flexibel)
pg_dump "$DATABASE_URL" -Fc -f omnitrack_$(date +%Y%m%d_%H%M).dump

Restore naar een lege database:

pg_restore -d "$DATABASE_URL" --clean --if-exists -v omnitrack_YYYYMMDD_HHMM.dump

Windows (PowerShell)

Zie scripts/pg-backup.ps1.

Docker Compose (lokaal)

Postgres draait als service db; dump vanaf de host gebruikt in deze repo poort 5433 (om conflict met een lokale Postgres op 5432 te vermijden):

set PGPASSWORD=omnitrack
pg_dump -h 127.0.0.1 -p 5433 -U omnitrack -d omnitrack -Fc -f omnitrack_backup.dump

Controle na restore

  1. Start app + gateway; open /readyz — moet 200 en db: true zijn.
  2. Log in en controleer kaart / fleet.

Point-in-time recovery (PITR)

Niet verplicht in Fase 1; voor productie later: WAL-archiving en provider-/Postgres-documentatie volgen.

RTO/RPO en volledige DR

Zie backup-dr-policy-template.md voor een invulbare policy (alle stores, retentie, restore drills).