Add misc scripts to repoitory
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
# Configuration
|
||||
BACKUP_DIR="/var/lib/postgresql_archive/pg_dumpfiles"
|
||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||
RETENTION_DAYS=7
|
||||
|
||||
# Ensure directory exists
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
# Get all non-system databases and back each one up.
|
||||
psql -U postgres -d postgres -Atc "SELECT datname FROM pg_database WHERE datistemplate = false AND datname <> 'postgres' ORDER BY datname" | while IFS= read -r DB_NAME; do
|
||||
pg_dump -U postgres -d "$DB_NAME" | gzip > "$BACKUP_DIR/${DB_NAME}_$TIMESTAMP.sql.gz"
|
||||
echo "Backup completed: ${DB_NAME}_$TIMESTAMP.sql.gz"
|
||||
done
|
||||
|
||||
# Delete backups older than retention period
|
||||
find "$BACKUP_DIR" -type f -mtime +$RETENTION_DAYS -delete
|
||||
Reference in New Issue
Block a user