first commit
This commit is contained in:
parent
13bc883d64
commit
b1f671e716
2 changed files with 89 additions and 0 deletions
44
copier/backup_db.sh
Executable file
44
copier/backup_db.sh
Executable file
|
|
@ -0,0 +1,44 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# -----------------------------
|
||||
# INPUTS
|
||||
# -----------------------------
|
||||
CONTAINER_NAME="54e"
|
||||
DB_PORT="5432"
|
||||
DB_NAME="mytestdb"
|
||||
|
||||
# -----------------------------
|
||||
# VALIDATION
|
||||
# -----------------------------
|
||||
if [ -z "$CONTAINER_NAME" ] || [ -z "$DB_PORT" ] || [ -z "$DB_NAME" ]; then
|
||||
echo "Usage: $0 <container_name> <port> <db_name>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# -----------------------------
|
||||
# CONFIG
|
||||
# -----------------------------
|
||||
PG_USER="postgres"
|
||||
BACKUP_DIR="./backups"
|
||||
DATE_STR=$(date +"%d_%m_%Y")
|
||||
BACKUP_FILE="${DB_NAME}_${DATE_STR}.dump"
|
||||
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
# -----------------------------
|
||||
# BACKUP
|
||||
# -----------------------------
|
||||
echo "Taking custom-format backup (.dump) of '$DB_NAME' from container '$CONTAINER_NAME'..."
|
||||
|
||||
docker exec "$CONTAINER_NAME" \
|
||||
pg_dump \
|
||||
-U "$PG_USER" \
|
||||
-p "$DB_PORT" \
|
||||
-Fc \
|
||||
-Z 6 \
|
||||
"$DB_NAME" > "$BACKUP_DIR/$BACKUP_FILE"
|
||||
|
||||
echo "Backup completed successfully:"
|
||||
echo "$BACKUP_DIR/$BACKUP_FILE"
|
||||
|
||||
45
restore/restore_dump.sh
Executable file
45
restore/restore_dump.sh
Executable file
|
|
@ -0,0 +1,45 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# -----------------------------
|
||||
# INPUTS
|
||||
# -----------------------------
|
||||
CONTAINER_NAME="$1"
|
||||
DB_PORT="$2"
|
||||
DUMP_FILE="$3"
|
||||
|
||||
# -----------------------------
|
||||
# VALIDATION
|
||||
# -----------------------------
|
||||
if [ -z "$CONTAINER_NAME" ] || [ -z "$DB_PORT" ] || [ -z "$DUMP_FILE" ]; then
|
||||
echo "Usage: $0 <container_name> <port> <dump_file>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$DUMP_FILE" ]; then
|
||||
echo "Dump file not found: $DUMP_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# -----------------------------
|
||||
# CONFIG
|
||||
# -----------------------------
|
||||
PG_USER="postgres"
|
||||
|
||||
# -----------------------------
|
||||
# RESTORE
|
||||
# -----------------------------
|
||||
echo "Restoring dump '$DUMP_FILE' into container '$CONTAINER_NAME'..."
|
||||
|
||||
docker exec -i "$CONTAINER_NAME" \
|
||||
pg_restore \
|
||||
-U "$PG_USER" \
|
||||
-p "$DB_PORT" \
|
||||
--clean \
|
||||
--if-exists \
|
||||
--no-owner \
|
||||
--no-privileges \
|
||||
-d postgres < "$DUMP_FILE"
|
||||
|
||||
echo "Restore completed successfully."
|
||||
|
||||
Loading…
Add table
Reference in a new issue