Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Добрый день, друзья. Не могу ни как вникнуть в суть непрерывного резервного копирования https://www.postgresql.org/docs/9.3/static/continuous-archiving.html Код: plaintext 1. 2. 3. Далее делаю копию: Код: plaintext 1. 2. Все супер. Проходит 6 часов я обнаруживаю в каталоге /home/user/backup_wal ~400 файлов каждый по 16Мб! Что это такое? Зачем они нужны? Вообще можно обойтись без опции archive_command ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 15:42 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, собственно, это wal и есть. Write ahead log, бинарный лог всех изменений. Их сохранение позволяет выполнить восстановление во времени в любую точку во времени от pg_stop_backup до текущего момента. Point in time recovery, pitr. И сошлюсь на pgday: http://pgday.ru/files/papers/53/PostgreSQL Backups the Modern Way.pdf (записей вроде бы ещё нет) archive_command - неправильный путь. Правильный - использовать pg_basebackup и pg_receivexlog Если вам не нужно pitr - то достаточно только pg_basebackup. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 15:59 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Melkij, Я заинтересован в хранении копии БД на удаленном сервере. Меня очень здорово устраивает rsync - если проводить rsync ежесуточно то вся операция занимает всего-то 3-5 минут. А если делать каждый раз отдельную копию то это 30 минут. БД весит ~35Gb Я правильно понял что в моем случае эти бинарные логи не нужны. И их можно тупо не копировать. Т.е. я могу закоментировать опцию archive_command ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 16:40 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Если вам не нужен pitr - то да, хранить все wal необязательно. rsync... Не могу ничего определённого сказать по поводу этого способа, может кто ещё скажет, но периодически проверяйте, можете ли вы восстановиться из бекапа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 17:00 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasumНе могу ни как вникнуть в суть непрерывного резервного копирования Так используйте pg_basebackup, и всех-то дел. ;) abrasumЯ заинтересован в хранении копии БД на удаленном сервере. Меня очень здорово устраивает rsync - если проводить rsync ежесуточно то вся операция занимает всего-то 3-5 минут. А если делать каждый раз отдельную копию то это 30 минут. БД весит ~35Gb А восстанавливаться-то Вы оттуда собираетесь, или делаете это "для галочки"? abrasumЯ правильно понял что в моем случае эти бинарные логи не нужны. И их можно тупо не копировать. Нет, неправильно. Если Вы их не сохраняете, в общем случае сейчас у Вас в "myserver.net:/data/postgresql/9.3/" мусор, а не backup(ы). abrasumТ.е. я могу закоментировать опцию archive_command ? If archive_command is an empty string (the default) while archive_mode is enabled, WAL archiving is temporarily disabled, but the server continues to accumulate WAL segment files in the expectation that a command will soon be provided. Т.е. они просто перестанут удаляться, и pg_xlog начнёт неограниченно расти... А зачем у Вас вообще включено архивирование, если Вас "устраивает rsync"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 19:30 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, одного rsync datadir недостаточно, нужно иметь все wal файлы, созданные с момента pg_start_backup('backup') до конца rsync'а. используйте pg_basebackup с опцией --xlog-method=stream при которой нужные файлы будут во время снятия бэкапа забираться по протоколу репликации. по скорости будет так же как и rsync. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2016, 19:33 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Спасибо, за ответы, коллеги. Подскажите мне про параметр wal_level Его нужно установить либо archive или hot_standby что бы можно было использовать pg_basebackup Какое значение использовать? Чем они отличаются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2016, 15:53 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, archive — писать в WAL информацию, достаточную для архивации логов и PITR hot_standby — как archive + все необходимое для HotStandby (восстановление и RO доступ к данным одновременно). Я везде ставлю hot_standby, в 9.6 их объединили под именем replica. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2016, 16:56 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Друзья, хочу все таки вернуться к способу копирования через pg_start_backup/rsync/pg_stop_backup. Что мне делать с файлами wal которые образуются в ходе работы rsync? Их нужно тупо на резервном сервере подложить в wal_archive? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2016, 11:44 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, Вам стоит разобраться в том, как устроен транзакционный движок в реляционных СУБД и том, как база использует журнал для восстановления. Тогда многое станет понятно и вопросы отпадут. По существу — все WAL-ы произведённые во время копирования PGDATA необходимы для запуска базы из такого бэкапа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2016, 15:14 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
А я наивно думал так: во время резервного копирования в БД все равно идут запросы на модификацию. Все эти запросы идут не на прямую в БД, а в эти самые журналы. После завершения копирования сервер читает эти журналы и применяет все изменения. Так как я копирую БД один раз в сутки то она в любом случае будет не синхронизирована с рабочим сервером, стало быть этими журналами можно элементарно пренебречь. И причем тут рабочая/не рабочая копия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2016, 15:39 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, если это не для академических целей - используйте pg_basebackup, где за вас уже на все грабли наступили и не изобретайте велосипед. rsync + archive_command использовали раньше, когда не было альтернатив. после вызова pg_start_backup все изменения пишутся на диск как обычно. он только делает (или ждет пока закончится) неявный checkpoint и сохраняет некоторую информацию. поэтому и нужны wal'ы, т.к. во время копирования data files могут меняться. After a checkpoint has been made and the log flushed, the checkpoint's position is saved in the file pg_control. Therefore, at the start of recovery, the server first reads pg_control and then the checkpoint record; then it performs the REDO operation by scanning forward from the log position indicated in the checkpoint record. Because the entire content of data pages is saved in the log on the first page modification after a checkpoint (assuming full_page_writes is not disabled), all pages changed since the checkpoint will be restored to a consistent state. т.е. при восстановлении будет проигран журнал с последнего checkpoint и таким образом будет обеспечено консистентное состояние. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2016, 16:33 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
Вчера я испытал настоящий бедхёрт. Нашел на просторах интернета такую команду для выполнения резервной копии PostgreSQL на удаленный сервер: Код: sql 1. БД весит 36Гб в итоге вся операция копирования длилась 6 часов!!!! Да это ни в какие ворота! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2016, 12:00 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasum, Что конкретно в ворота не лезет? Может у вас сеть не даёт нормальной скорости? (ssh шифрует поток данных — оно тоже “добавляет” к скорости.) Или дисковая загружена другими задачами? Работа с базой требует понимания во всей инфраструктуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2016, 12:43 |
|
||
|
Объясните алгоритм резервного копирования WAL Archiving
|
|||
|---|---|---|---|
|
#18+
abrasumВчера я испытал настоящий бедхёрт. Нашел на просторах интернета такую команду для выполнения резервной копии PostgreSQL на удаленный сервер: Код: sql 1. БД весит 36Гб в итоге вся операция копирования длилась 6 часов!!!! Да это ни в какие ворота! 36Gb за 6 часов - это только сетевые проблемы, на честном гигабите это должно занимать заметно меньше 10 минут. Проверьте за сколько времени у вас на удаленный сервер просто тестовый файл копируется размером в 1Gb Например. PS: base backup лучше пускать сразу на удаленном сервере... тогда не надо возится с tar/untar/ssh. -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2016, 17:41 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=39289532&tid=1997055]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
188ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 312ms |

| 0 / 0 |
