Commit 913129017545df7b9a66ed13623f2ff2fee8760e

Authored by macartur
1 parent 883ca6ce

Verifing ldap and redmine database backup and restore

Showing 1 changed file with 27 additions and 6 deletions   Show diff stats
script/backup_restore.sh
... ... @@ -9,15 +9,19 @@ REDMINE_USER='redmine'
9 9 PASSWORD_REDMINE_USER='redmine'
10 10 REDMINE_DIRECTORY="/opt/redmine"
11 11  
  12 +#make dirs
  13 +
  14 +sudo mkdir -p $DIR_BACKUP
  15 +
12 16  
13 17 if [ "$1" == "backup" ];then
14 18 echo "BACKUP"
15 19 # #backup ldap
16   - sudo slapcat -v -l $DIR/ldap-backup.ldif
  20 + sudo slapcat -v -l $DIR_BACKUP/ldap-backup.ldif
17 21  
18 22 #backup redmine postgres
19 23 export PGPASSWORD=$PASSWORD_REDMINE_USER
20   - /usr/pgsql-9.3/bin/pg_dump -i -h $LOCALHOST -p $PORT_POSTGRES -U $REMINE_USER -F c -b -v -f $DIR_BACKUP/redmine.dump $DATABASE_REDMINE
  24 + /usr/pgsql-9.3/bin/pg_dump -i -h $LOCALHOST -p $PORT_POSTGRES -U $REDMINE_USER -Fc -b -v -f $DIR_BACKUP/redmine.dump $DATABASE_REDMINE
21 25  
22 26 #backup redmine files
23 27 sudo rsync -bvza $REDMINE_DIRECTORY/files $DIR_BACKUP/files_backup --delete
... ... @@ -32,13 +36,30 @@ if [ "$1" == "restore" ] ; then
32 36  
33 37 #remove old users
34 38 # sudo service slapd stop
35   -# sudo rm -rf /var/lib/ldap/!(DB_CONFIG)
  39 +# sudo rm /var/lib/ldap/alock /var/lib/ldap/log* /var/lib/ldap/*db* -f
36 40 # sudo service slapd start
37 41 # sudo service slapd stop
38   -#
39   -# #adicionar os usuários antigos
40   -# sudo slapadd -l $DIR/ldap-backup.ldif
  42 +
  43 + #adicionar os usuários antigos
  44 +# sudo slapadd -l $DIR_BACKUP/ldap-backup.ldif
41 45 # sudo slapindex -v
42 46 # sudo chown ldap:ldap /var/lib/ldap/*
43 47 # service slapd start
  48 +
  49 +
  50 + # reset database redmine
  51 +
  52 + PID_REDMINE_UNICORN=`cat $REDMINE_DIRECTORY/pids/unicorn.pid `
  53 + sudo kill -9 $PID_REDMINE_UNICORN
  54 +
  55 + sudo -u postgres psql -c "DROP DATABASE $DATABASE_REDMINE;"
  56 + sudo -u postgres psql -c "CREATE DATABASE $DATABASE_REDMINE WITH ENCODING='UTF8' OWNER=$REDMINE_USER;"
  57 +
  58 +
  59 + # restore database redmine
  60 + export PGPASSWORD=$PASSWORD_REDMINE_USER
  61 + /usr/pgsql-9.3/bin/pg_restore --host=$LOCALHOST --port=$PORT --dbname=$DATABASE_REDMINE --username=$REDMINE_USER $DIR_BACKUP/redmine.dump -n public -v
  62 +
  63 + sudo rsync -bvza $DIR_BACKUP/files_backup $REDMINE_DIRECTORY --delete
  64 +
44 65 fi
... ...