Próba zrobienia co godzinę przyrostowej kopii zapasowej pojedynczego serwera Postgres (Win7 64).
Mam następującą konfigurację w postgresql.conf
:
max_wal_senders = 2
wal_level = archive
archive_mode = on
archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"'
(uruchom ponownie)
Zrobiłem kopię zapasową z pg_basebackup -U postgres -D ..\foo -F t -x
Który utworzył duży base.tar
plik w foo
folderze i dodał około 16 384 KB plików, które, jak zakładam, to WAL.
Nie rozumiem, dlaczego WALs foo
się nie zmieniają . Zmiany WALs data/pg_xlog
. Czy pg nie powinno ich kopiować? Jak się na to decyduje?
Być może muszę ustawić archive_timeout=3600
?
Widziałem kilka stron (listy mailingowe pg, strona postgres Bacoli), które mówią, że musisz wywołać pg_start_backup () i pg_stop_backup (), ale uważam, że nie są one wymagane. Czy to prawda?
Wtórne pytania:
Jak często
data/pg_xlog
napisane są WAL ? Co powoduje zapis?Wydaje się aktualizować WAL, jeśli zrobię trochę DML, a następnie
\q
w psql. Lub edytuj tabelę w pgAdmin, a następnie zamknij okno. Pomyślałem, że napiszę przy zatwierdzeniu.Najlepsze praktyki? pg_basebackup raz w tygodniu? Zarchiwizować WAL na tym samym komputerze co PG lub na komputerze zdalnym?
źródło
pg_basebackup
, gdy już korzystasz , już to załatwia. 3. Postgres automatycznie usunie pliki WAL,pg_log
gdy nie będą już potrzebne. Nie powinieneś nic robić ręczniepg_log
. W przeciwnym razie zobaczwal_keep_segments
parametrpg_xlog
jest całkowicie zarządzany automatycznie przez postgres, natomiast folder archiwum jest całkowicie zarządzany przez DBA.Istnieje narzędzie, które bardzo Ci pomoże, WAL-E . Zapewnia
archive_command
irestore_command
dla PITR do S3.Nie ma poleceń wykonywania przyrostowych ani różnicowych kopii logicznych.
pg_dump
nie może przyjmować przyrostowego ani różnicowego. Jedynym sposobem na to jest archiwizacja dzienników.Teoretycznie możesz zrobić nową pełną kopię zapasową, zrobić różnicę binarną między nią a ostatnią kopią zapasową i przesłać różnicę. Uderza mnie to jako kruchy i nieefektywny sposób robienia rzeczy i naprawdę nie polecałbym tego.
Ponadto PgBarman obsługuje integrację z S3 za pomocą skryptów przechwytujących i zautomatyzuje znaczną część rotacji i zarządzania kopiami zapasowymi. Ponownie, może to nie być opcja w systemie Windows.
źródło