Закройте мне гештальт про pg_dump. Когда его можно юзать а

когда нельзя? Нужно ли тормозить сервер или нет?

16 ответов

17 просмотров

да ничего ненужно останавливать, pg_dump берет снимок на начало дампа, и все оконченные транзакции на момент снимка попадают в дамп. Всё.

а какую цель преследуете используя pg_dump? как часто его будете запускать? какой размер базы?

Eldar-Mingaliev Автор вопроса
Сергей Голод
а какую цель преследуете используя pg_dump? как ча...

просто бекаплю раз в день сервисные базы, разного размера, от 200мб до десятков гигабайт. Сейчас есть технологическое окно для этого, но хочется его убрать

Eldar Mingaliev
просто бекаплю раз в день сервисные базы, разного ...

ну если вам/бизнесу достаточно бекапов раз в сутки, то какая разница, что к окончанию бекапа какие-то транзакции, даже если они завершились после начатия бекапа, в сам бекап не попадут? Главное в бекап войдут все консистентные данные на момент начала бекапа. И никого выгонять ненадо

Eldar Mingaliev
просто бекаплю раз в день сервисные базы, разного ...

из создаваемых дампов приходится делать восстановление? есть pg_probackup который можно использовать в инкрементальном режиме, но восстанавливать нужно будет весь кластер, а не выборочную базу

Error
ну если вам/бизнесу достаточно бекапов раз в сутки...

у pg_dump есть неприятная особенность - он вымывает кэш у ПГ и на уровне ФС, пока сделает COPY на все таблицы.

Eldar-Mingaliev Автор вопроса
Сергей Голод
из создаваемых дампов приходится делать восстановл...

вот тут есть неудобный момент, если крякнула только одна база то восстановлением из инкремента мы снесем часть полезной информации из рабочих баз?

Eldar Mingaliev
вот тут есть неудобный момент, если крякнула тольк...

pg_probackup - восстановит весь кластер, а не отдельную базу. Либо восстанавливать в другое место, а оттуда делать pg_dump нужной базы

Eldar Mingaliev
вот тут есть неудобный момент, если крякнула тольк...

восстановить можно "рядом" и оттуда выдернуть то что нужно но если у вас нет цели досконально во всем этом разбираться, то вероятность наделать ошибок - весьма велика

Сергей Голод
у pg_dump есть неприятная особенность - он вымывае...

более неприятной особенностью наверное можно считать потерю статистики, а буферный кеш у постгреса имеет особенность, кольцевой буфер. Кеш же ОС, скорее всего вымоется, но влияет ли кеш ОС на скажем cache_hit_ratio я не нашел инфы в документации

Error
более неприятной особенностью наверное можно счита...

после выполнения pg_dump какое-то время запросы становятся медленнеее, пока база опять не прогреется

Сергей Голод
после выполнения pg_dump какое-то время запросы ст...

интересное наблюдение, т.е. вы мониторите или как-то замеряли скорость выполнения одних и тех-же запросов на одних и тех же данных? Интересует как со стороны мониторинга это можно увидеть

Error
интересное наблюдение, т.е. вы мониторите или как-...

снять статистику до выполнения pg_dump, и после выполнения. Но если носители быстрые, то разогрев достаточно быстро выполняется. Больше тормозов именно во время выполнения самого pg_dump, pg_probackup в этом плане более щадящий

Uriy Zadachin
Можно подробнее?

он обычными SQL запросами выбирает все записи из таблиц. Т.е. вычитывает всю базу в память

Сергей Голод
pg_probackup - восстановит весь кластер, а не отде...

Сергей, не обязательно весь кластер, можно только указанную базу - это намного быстре если баз много. Но в другое место и потом или там с ней работать или дамп/ресторе

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

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

Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
А в каком формате фреймы? Сам формат сейчас придумываешь, или что-то готовое нужно распарсить?
Okhsunrog
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Карта сайта