fiddy/scripts/restore-postgres.sh

20 lines
460 B
Bash

#!/usr/bin/env bash
set -euo pipefail
if [[ $# -lt 2 ]]; then
echo "Usage: $0 <backup.dump> <target_database_url>"
exit 1
fi
BACKUP_FILE="$1"
TARGET_DATABASE_URL="$2"
if [[ ! -f "$BACKUP_FILE" ]]; then
echo "Backup file not found: $BACKUP_FILE"
exit 1
fi
echo "Restoring backup ${BACKUP_FILE} into target database..."
pg_restore --clean --if-exists --no-owner --no-privileges --dbname="$TARGET_DATABASE_URL" "$BACKUP_FILE"
echo "Restore complete."