echo "Restoring..."
 
-# Migrate backup to date-based format
-if [ -f /srv/backup/postgres.dump ]; then
-    echo 'A backup without date was found. Moving it to postgres_old.dump'
-    mv /srv/backup/postgres.dump /srv/backup/postgres_old.dump
-    if [ ! -f /srv/backup/postgres_latest.dump ]; then
-      cd /srv/backup
-      ln -s postgres_old.dump postgres_latest.dump
-    fi
-fi
-
 # import database functions of type
 if [ ! -z "$MYSQL_ROOT_PASSWORD" ]; then
     gunzip < /srv/backup/mysql.dump.gz | mysql -h db $MYSQL_DATABASE -uroot -p$MYSQL_ROOT_PASSWORD
     echo "Creating new db..."
     createdb -hdb -Upostgres -T template0 postgres
     echo "Importing dump..."
-    pg_restore -C -c -hdb -Upostgres -dpostgres /srv/backup/${1:-postgres_latest.dump}
+    pg_restore -C -c -hdb -Upostgres -dpostgres /srv/backup/postgres.dump
 fi
 
 echo "Restore done!"
 
--- /dev/null
+#!/bin/bash
+
+/srv/bin/misc/wait-for-it/wait-for-it.sh -h db -p $DB_PORT;
+
+# Stop execution if some command fails
+set -e
+
+echo "Restoring..."
+
+# Migrate backup to date-based format
+if [ -f /srv/backup/postgres.dump ]; then
+    echo 'A backup without date was found. Moving it to postgres_old.dump'
+    mv /srv/backup/postgres.dump /srv/backup/postgres_old.dump
+    if [ ! -f /srv/backup/postgres_latest.dump ]; then
+      cd /srv/backup
+      ln -s postgres_old.dump postgres_latest.dump
+    fi
+fi
+
+# import database functions of type
+if [ ! -z "$MYSQL_ROOT_PASSWORD" ]; then
+    gunzip < /srv/backup/mysql.dump.gz | mysql -h db $MYSQL_DATABASE -uroot -p$MYSQL_ROOT_PASSWORD
+elif [ ! -z "$POSTGRES_PASSWORD" ]; then
+    export PGPASSWORD=$POSTGRES_PASSWORD
+    echo "Killing clients..."
+    psql -hdb -Upostgres -dpostgres -c "SELECT pid, (SELECT pg_terminate_backend(pid)) as killed from pg_stat_activity WHERE state LIKE 'idle';"
+    echo "Dropping db..."
+    dropdb -hdb -Upostgres postgres
+    echo "Creating new db..."
+    createdb -hdb -Upostgres -T template0 postgres
+    echo "Importing dump..."
+    pg_restore -C -c -hdb -Upostgres -dpostgres /srv/backup/${1:-postgres_latest.dump}
+fi
+
+echo "Restore done!"
 
 # Stop execution if some command fails
 set -e
 
-# Migrate backup to date-based format
-if [ -f /srv/backup/postgres.dump ]; then
-    echo 'A backup without date was found. Moving it to postgres_old.dump'
-    mv /srv/backup/postgres.dump /srv/backup/postgres_old.dump
-    if [ ! -f /srv/backup/postgres_latest.dump ]; then
-      cd /srv/backup
-      ln -s postgres_old.dump postgres_latest.dump
-    fi
-fi
-
 if [ ! -z "$MYSQL_PASSWORD" ]; then
     export MYSQL_PWD=$MYSQL_PASSWORD
     mysqldump $MYSQL_DATABASE -hdb -u$MYSQL_USER | gzip > /srv/backup/mysql.dump.gz
 elif [ ! -z "$POSTGRES_PASSWORD" ]; then
     export PGPASSWORD=$POSTGRES_PASSWORD
-    now=$(date +"%m_%d_%Y_%H_%M_%S")
-    pg_dump -Fc -hdb -Upostgres -dpostgres > /srv/backup/postgres_$now.dump
-    cd /srv/backup
-    rm -f postgres_latest.dump
-    ln -s postgres_$now.dump postgres_latest.dump
+    pg_dump -Fc -hdb -Upostgres -dpostgres > /srv/backup/postgres.dump
 fi
 
 echo "Backup done!"
 
--- /dev/null
+#!/bin/bash
+
+# dump postgres or mysql functions of the database
+# export POSTGRES="$(dpkg --get-selections  | grep postgres 2>&1)"
+# export MYSQL="$(dpkg --get-selections  | grep mysql 2>&1)"
+
+# Stop execution if some command fails
+set -e
+
+# Migrate backup to date-based format
+if [ -f /srv/backup/postgres.dump ]; then
+    echo 'A backup without date was found. Moving it to postgres_old.dump'
+    mv /srv/backup/postgres.dump /srv/backup/postgres_old.dump
+    if [ ! -f /srv/backup/postgres_latest.dump ]; then
+      cd /srv/backup
+      ln -s postgres_old.dump postgres_latest.dump
+    fi
+fi
+
+if [ ! -z "$MYSQL_PASSWORD" ]; then
+    export MYSQL_PWD=$MYSQL_PASSWORD
+    mysqldump $MYSQL_DATABASE -hdb -u$MYSQL_USER | gzip > /srv/backup/mysql.dump.gz
+elif [ ! -z "$POSTGRES_PASSWORD" ]; then
+    export PGPASSWORD=$POSTGRES_PASSWORD
+    now=$(date +"%m_%d_%Y_%H_%M_%S")
+    pg_dump -Fc -hdb -Upostgres -dpostgres > /srv/backup/postgres_$now.dump
+    cd /srv/backup
+    rm -f postgres_latest.dump
+    ln -s postgres_$now.dump postgres_latest.dump
+fi
+
+echo "Backup done!"