Спроба зробити погодинну поступову резервну копію одного сервера Postgres (Win7 64).
У мене є така настройка postgresql.conf
:
max_wal_senders = 2
wal_level = archive
archive_mode = on
archive_command = 'copy "%p" "c:\\postgres\\foo\\%f"'
(перезапуск)
Я робив резервне резервне копіювання за допомогою pg_basebackup -U postgres -D ..\foo -F t -x
Який base.tar
файл створив великий foo
папку і додав 16,384 КБ файлів, які я вважаю WAL.
Те, що я не розумію, - це те, чому WAL в foo
не змінюються . WALs data/pg_xlog
змінюються. Чи pg не повинен копіювати їх? Як він вирішує це зробити?
Можливо, мені потрібно встановити archive_timeout=3600
?
Я бачив декілька сайтів (списки розсилки pg, сторінку поштових повідомлень bacula), де сказано, що вам потрібно зателефонувати pg_start_backup () та pg_stop_backup (), але я вважаю, що вони не потрібні. Це правда?
Вторинні питання:
Як часто записуються ВАЛ
data/pg_xlog
? Що запускає запис?Здається, оновити WAL, якщо я буду робити деякі DML, то
\q
в psql. Або відредагуйте таблицю в pgAdmin та закрийте вікно. Я подумав, що це буде писати на фіксації.Кращі практики? pg_basebackup раз на тиждень? Архів WAL-файлів на тій же машині, що і PG, або віддаленій машині?