Commit 04814aa6 authored by Riccardo Padovani's avatar Riccardo Padovani

Merge branch 'backup_scripts' into 'master'

Backup Scripts

Created a script to create dump of the database in a directory choose by admin
parents 69e032fc 5b026e3a
#!/bin/bash
#
# Script to create a complete dump of a Drupal Postgresql database, keeping two backups at
# the same time, one for yesterday and one for today.
#
# You have to specify the folder where backups have to be saved and the name of
# the database.
# The script uses pg_dump
# Suggestion: indicate the complete path.
#
# Use as ./backup.sh ~/backupFolder databaseName
#
# Copyright (C) 2014 Riccardo Padovani <riccardo@rpadovani.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>
# Backup directory
DIR=${1}
DBNAME=${2}
# Check if the directory exists, if not, create it
if [ ! -d "$DIR" ]; then
mkdir "$DIR"
fi
# If there is yesterday backup, then delete it
if [ -f "$DIR"/yesterday.tar.gz ]; then
rm -f "$DIR"/yesterday.tar.gz
fi
# If there is a backup of today, move it to yesterday
if [ -f "$DIR"/today.tar.gz ]; then
mv "$DIR"/today.tar.gz "$DIR"/yesterday.tar.gz
fi
# Create the backup
pg_dump "$DBNAME" > "$DIR"/today.sql
tar -xczf "$DIR"/today.tar.gz "$DIR"/today.sql
# Remove the temp file
rm "$DIR"/today.sql
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment