20 lines
460 B
Bash
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."
|