summaryrefslogtreecommitdiffstats
path: root/scripts/backup/postgres_backup_v1.sh
blob: 9a650fbfab502acb8a757087b1f239af3bf163dd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/bash

set -Eeuo pipefail

host="localhost"
port="5432"
user="postgres"
databases=("vsh_store" "time_tracker")
backup_name=$(date -u +%Y%m%dT%H%M%SZ)
backup_folder=/opt/backup/db

for i in "${databases[@]}"
do

    [ ! -d $backup_folder ] && mkdir -p $backup_folder

	pushd $backup_folder

	if [ ! -d "$i" ]; then
		mkdir $i
	fi

	cd $i

	echo "$(date -u +%Y-%m-%d_%H:%M:%SZ) Dumping $i into $backup_folder/$i/$backup_name.psql"
	pg_dump -U $user -p $port -h $host -Fc --clean --if-exists $i -f $backup_name.psql

	echo "$(date -u +%Y-%m-%d_%H:%M:%SZ) Dumping $i into $backup_folder/$i/$backup_name.sql"
	pg_dump -U $user -p $port -h $host --inserts --clean --if-exists $i -f $backup_name.sql
	
	popd

done