postgresql_db_yukselt 839 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/sh
  2. PGDATA="$1"
  3. PGBACKUP="$2"
  4. if [ -z "$PGDATA" ]
  5. then
  6. echo "Usage: $0 database-path backup-sql"
  7. exit 1
  8. fi
  9. if [ -z "$PGBACKUP" ]
  10. then
  11. echo "Usage: $0 database-path backup-sql"
  12. echo "Usage example:$0 /srv/pgsql/data /srv/pgsql/yedek/yedek-9.6.3"
  13. exit 1
  14. fi
  15. if [ ! -f "$PGBACKUP" ]
  16. then
  17. echo "$PGBACKUP not found"
  18. echo "Usage example:$0 /srv/pgsql/data /srv/pgsql/yedek/yedek-9.6.3"
  19. exit 1
  20. fi
  21. # servis durdurulur.
  22. servis postgresql stop
  23. # eski yedeğe alınır.
  24. _ustdizin=$(dirname $PGDATA)
  25. mv ${_ustdizin}/data ${_ustdizin}/eskidata
  26. # yeni dizin ve izinleri atanır.
  27. mkdir ${_ustdizin}/data
  28. chown postgres:postgres ${_ustdizin}/data
  29. # yeni vt oluşturulur.
  30. su - postgres -c '/usr/bin/initdb -E UTF8 -D /srv/pgsql/data'
  31. servis postgresql start
  32. sleep 3
  33. su - postgres -c "psql -f $PGBACKUP"