Version 5 (modified by JP, 12 years ago) |
---|
Backup i odtworzenie systemu eDokumenty (DRAFT)
Zrzuty są wykonywane do katalogu /mnt/backup/<DZIEŃ_TYGODNIA>/edokumenty.sql.gz poleceniem mniej lub bardziej takim:
# 1 opcja - w kastomowym formacie postgresa su - postgres -c "pg_dump -O -Fc -Z9 $database" > edokumenty.dump # 2 opcja - w formacie SQL (z kompresją gzip) su - postgres -c "pg_dump -c edokumenty -f ${DST}/edokumenty.sql" gzip -f ${DST}/edokumenty.sql
Odtwarzanie będzie zatem wymagało następującej procedury:
#1 - dla formatu kastom (można również przez PgAdmin) pg_restore -F c --dbname=edokumenty -U postgres edokumenty.backup #2 - dla formatu sql gzip -d edokumenty.sql.gz psql -U edokumenty -d edokumenty -f edokumenty.sql
Procedura odtworzenia systemu
Należy wykonywać testowo co przynajmniej rok, w celu weryfikacji. Początkowe etapy zależne od infrastruktury. Procedura zakłada że nośnikiem jest dysk USB widoczny w systemie jako /dev/sdb1
- Montaż nowej maszyny
- Instalacja systemu operacyjnego (może być z kopii ghostem)
1. Podmontowanie nośnika z kopią zapasową
mount /dev/sdb1 /mnt/usbdisk
2. Przywrócenie konfiguracji systemu
Kopiujemy wszystkie pliki z katalogu system na system plików: Zawartość /mnt/usbdisk/system/ do głównego systemu plików.
Odtwarzamy środowisko bazy danych.
# Tworzenie użytkowników bazy danych (wszyscy z opcjami N) sudo -u postgres createuser --no-superuser --no-createdb --no-createrole http sudo -u postgres createuser --no-superuser --no-createdb --no-createrole edokumenty # Tworzenie baz danych sudo -u postgres createdb -E UTF8 edokumenty -O edokumenty sudo -u postgres createlang -d edokumenty plpgsql
Restart usług postgres, apache.
3. Odtworzenie aplikacji eDokumenty
Kod źródłowy oraz pliki konfiguracyjne są już odtworzone - skopiowane zostały z katalogu system. Pozostaje odtworzyć pliki załączników oraz bazę danych:
3.1 Odtworzenie plików
cp -rp /mnt/usbdisk/files /home/edokumenty/
3.2 Odtworzenie bazy danych
Przechodzimy do katalogu z ostatnią kopią
cd /mnt/usbdisk/db/3 gzip -d edokumenty.sql.gz sudo -u postgres psql -U postgres -d edokumenty -f edokumenty.sql