172 похожих чатов

Господа, подскажите по вопросу. Есть сервер БД с настроенным непрерывным

архивированием, и есть сервер бэкапа. В один день сервер БД внезапно завис и какое-то время не работал. Сейчас при попытке сделать бэкап probackup ругается, что WAL segment is absent. Проверил в директории WAL на сервере бэкапов, там действительно этого файла нет. На сервере БД, само собой тоже. Как теперь поправить эту ситуацию? Только сделать полный бэкап? И как можно в дальнейшем избежать такой ситуации?

14 ответов

8 просмотров

у вас при попытке снятия полного бэкапа ошибка такая выходит ?

> Только сделать полный бэкап? По идее, да. А как конкретно всё это вообще настроено (т.е. суть в том, что при минимально адекватных настройках архивирования этого не должно было случиться — т.е. происшедшее указывает на bug в чём-то)? > И как можно в дальнейшем избежать такой ситуации? Выяснить, что произошло, в первую очередь.

Николай Ласточкин
Нет, при инкрементале

Значит, надо пора делать FULL.

Вообще, да, full — но как у вас мог сегмент не попасть в архив? Оно вобще-то не удаляется пока до архива не доехало. Смотрите логи — там должна быть об этом информацыя.

Николай-Ласточкин Автор вопроса
Yaroslav Schekin
> Только сделать полный бэкап? По идее, да. А ка...

Я поглядел в логи, там следующее. В 7:21 был отправлен сегмент 0000000200003FA800000066. Он отправился успешно. В 7:22 сервер завис. В 7:39 его ребутнули. И вот после вычитывания WAL и запуска БД был уже отправлен сегмент 0000000200003FA800000068 в 7:43. Как раз сегмент 0000000200003FA800000067 (на который ругается Probackup) и не был отправлен. Видимо, из-за внезапного ребута данный сегмент не был отправлен.

Николай Ласточкин
Я поглядел в логи, там следующее. В 7:21 был отпра...

А как конкретно всё это вообще настроено? И да, SELECT version();? > Видимо, из-за внезапного ребута данный сегмент не был отправлен. А других логов нет? Если PostgreSQL стал отправлять сегмент 0000000200003FA800000068, то это значит, что что-то подтвердило успешную запись предыдущего (если не считать возможных bugs, опять-таки).

Николай-Ласточкин Автор вопроса

Других логов нет, только эти. Версия 11.5, ванильная. Конкретно настроено следующим образом. Включен archive_mode. wal_level установлен в replica. Указан параметр archive_command, который шлет wal к серверу бэкапа. checkpoint_timeout выставлен на 15 минут. archive_timeout выставлен на 1 минуту. Ну и дальше как обычно, WAL-ы отправляются серверов БД, сервер бэкапов раз в неделю в пятницу делает Full, в остальные дни Page.

Николай-Ласточкин Автор вопроса

Обновление планируется, сам хочу перейти на 12-ую версию. Так и я ж не знаю, какие именно настройки вас интересуют, знал бы, все сразу скинул) archive_command следующий pg_probackup-11 archive-push -B /backup/probackup --instance=dbserver --wal-file-path=%p --wal-file-name=%f --remote-host=bkpsrv --remote-user=probackup --compress --overwrite --threads=2 --batch-size=50

Николай Ласточкин
Обновление планируется, сам хочу перейти на 12-ую ...

> Обновление планируется, сам хочу перейти на 12-ую версию. При чём тут 12-я версия? Использование 11.5 в production сейчас как бы намекает нам на качество администрирования (и да, Ваша проблема может быть от этого). ;) > какие именно настройки вас интересуют Относящиеся к делу. А версия probackup какая?

Николай-Ласточкин Автор вопроса
Yaroslav Schekin
> Обновление планируется, сам хочу перейти на 12-у...

Не я не ставил, мне досталось по наследству. А что не так с версией 11.5? Probackup 2.5.12

Николай Ласточкин
Не я не ставил, мне досталось по наследству. А что...

> А что не так с версией 11.5? Да всего лишь https://why-upgrade.depesz.com/show?from=11.5&to=11.21 Короче говоря, ищите там свою проблему сами, если у Вас больше ничего нет. ;) > Probackup 2.5.12 Ну хоть этот актуальный... а в pg_probackup.log (ну или как там у вас настроено) ничего нет?

Николай-Ласточкин Автор вопроса
Yaroslav Schekin
> А что не так с версией 11.5? Да всего лишь http...

Поищу, спасибо. В логе пробэкапа ничего нет, только вот сообщение о отсутствии WAL

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
Слушайте, ещё такая интересная задачка. Сделан аудит действий пользователей через триггеры в базе, соответственно каждый пользователь имеет свой логин и пароль в базе. Это пре...
Сергей Бычков
12
Скажите, тут нет проблемы? IMyInterface1 = interface function GetInterface2: IInterface2; ... function TMyInterface.GetInterface2: IInterface2; begin Result := TI...
Ruslan aka DUDE
18
вопрос по москвину - не понимаю вот такого вопроса похоже Сколько разных всегда завершающихся функций с типом a -> a -> b -> a -> a можно реализовать? Две функции одинаково...
Fedor
11
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Утра доброго. Просветите пожалуйста. Хочу сделать rest сервер на делфи. Посмотрел 3 фреймворка: dmvc, Mars, mormot. Ни в одном из них не упоминается ассинхронная обработка вхо...
Сергей Бычков
10
возможно для форматирования TimeStampZ нужен другой механизм, не?
Роман Лях (rgreat)
13
Карта сайта