Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать чтобы pg_basebackup не удалял файлы? / 8 сообщений из 8, страница 1 из 1
16.08.2019, 12:10
    #39850277
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
Добрый день.

pg_basebackup удаляет файлы.



Можно сделать чтобы он не удалял?
...
Рейтинг: 0 / 0
16.08.2019, 12:12
    #39850279
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
Код: sql
1.
2.
3.
4.
316943481/316943481 kB (100%), 0/1 tablespace (.../basebackup/base.tar.gz)
316943481/316943481 kB (100%), 1/1 tablespace
pg_basebackup: could not get write-ahead log end position from server: ОШИБКА:  запрошенный сегмент WAL 00000001000006A4000000EF уже удалён
pg_basebackup: removing data directory "/basebackup/"
...
Рейтинг: 0 / 0
16.08.2019, 12:12
    #39850281
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
т.е. даже если он не нашел WAL запретить ему удаление файла бэкапа.
...
Рейтинг: 0 / 0
16.08.2019, 12:25
    #39850289
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
per,

Код: plaintext
1.
2.
pg_basebackup --help|grep no-clean
  -n, --no-clean         do not clean up after errors
...
Рейтинг: 0 / 0
16.08.2019, 14:23
    #39850381
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
Если у вас есть архив WAL - то не тяните wal в basebackup указав --wal-method=none
Если у вас нет архива WAL - то зачем вам битый basebackup с которым дальше ничего сделать нельзя?
...
Рейтинг: 0 / 0
22.08.2019, 17:21
    #39852904
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
MelkijЕсли у вас есть архив WAL - то не тяните wal в basebackup указав --wal-method=none
Если у вас нет архива WAL - то зачем вам битый basebackup с которым дальше ничего сделать нельзя?


архив WAL есть.

Но он на том же сервере что и БД.


А есть ли способ сделать чтобы WAL хранились во время выполнения бэкапирования?
...
Рейтинг: 0 / 0
22.08.2019, 17:23
    #39852905
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
Павел Лузановper,

Код: plaintext
1.
2.
pg_basebackup --help|grep no-clean
  -n, --no-clean         do not clean up after errors


Спасибо.

Тоже хороший вариант.

Это ответ на мой вопрос.



Однако, это оказалось не слишком надежны.
Надо подумать как сделать чтобы wal файлы не удалялись во время бэкапирования.

Может быть параметр wal_keep_segments менять перед началом и в конце...
...
Рейтинг: 0 / 0
22.08.2019, 17:35
    #39852917
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать чтобы pg_basebackup не удалял файлы?
perMelkijЕсли у вас есть архив WAL - то не тяните wal в basebackup указав --wal-method=none
Если у вас нет архива WAL - то зачем вам битый basebackup с которым дальше ничего сделать нельзя?


архив WAL есть.

Но он на том же сервере что и БД.
И зачем он тогда такой нужен?

Поскольку работаете вы явно с postgresql 10+, то про девятки говорить не будут.
Чтобы wal гарантированны можно было забрать - не меняйте дефолтный для вашей версии --wal-method и не указывайте --no-slot. Можно явно указать --wal-method=stream (но не указывать --no-slot). Тогда будет создан временный слот репликации, который гарантирует что база-источник не удалит WAL потребные для консистентности этого basebackup.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать чтобы pg_basebackup не удалял файлы? / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]