Mencoba melakukan pencadangan tambahan setiap jam dari satu server Postgres (Win7 64).
Saya memiliki pengaturan berikut di postgresql.conf
:
max_wal_senders = 2
wal_level = archive
archive_mode = on
archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"'
(mengulang kembali)
Saya melakukan backup dasar dengan pg_basebackup -U postgres -D ..\foo -F t -x
Yang membuat base.tar
file besar di foo
folder dan menambahkan beberapa 16.384 file KB, yang saya anggap WAL.
Apa yang saya tidak mengerti adalah mengapa WAL di foo
tidak berubah . WAL dalam data/pg_xlog
perubahan. Apakah pg tidak seharusnya menyalinnya? Bagaimana cara memutuskan untuk melakukannya?
Mungkin saya perlu mengatur archive_timeout=3600
?
Saya telah melihat beberapa situs (milis pg, halaman postgres bacula) yang mengatakan Anda perlu memanggil pg_start_backup () dan pg_stop_backup (), tetapi saya percaya bahwa itu tidak diperlukan. Benarkah itu?
Pertanyaan sekunder:
Seberapa sering WALs
data/pg_xlog
ditulis? Apa yang memicu penulisan?Tampaknya untuk memperbarui WAL jika saya melakukan DML maka
\q
dalam psql. Atau edit tabel di pgAdmin lalu tutup jendela. Saya pikir itu akan menulis di komit.Praktik terbaik? pg_basebackup seminggu sekali? Mengarsipkan WAL ke mesin yang sama dengan PG atau mesin jarak jauh?