Бекап работающего сервера на Виндос

Пытался заархивировать кластер и тейбспейс работающего сервера. Использую GNUwin32-ARJ. При восстановлении возникают ошибки - crc - bad file. Пробовал повторно заархивировать кластер и тейбспейсы - опять ошибки - но теперь уже на других файлах. Возможно дело в открытых файлах.

Папку pg_tblspc не копирую - там симлинки - это отдельная история.

Кто подскажет как сделать правильно бекап на файловом уровне сервера?

Комментарии

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Вопросы задаём

Вопросы задаём в форуме, блоги предназначены для авторского материала.

Файловый бакап работающего сервера - это простите полная дурь.
Если бакап неприменно нужен работающего сервера - используйте pg_dump

может и дурь

может и дурь но написано ж:
23.3. On-line backup and point-in-time recovery (PITR)
23.3.2. Making a Base Backup
пп3: Perform the backup, using any convenient file-system-backup tool such as tar or cpio. It is neither necessary nor desirable to stop normal operation of the database while you do this.

Я вам сказал

Я вам сказал своё мнение. Если вы с ним не согласны, на основании того, что написано, задайте вопрос "почему не работает?" тому, кто это написал.
Подумайте сами, вы пытаетесь архивировать открытые файлы, в которые могу вноситься изменения в момент, когда вы их добавляете в архив. Какая уж тут целостность этих файлов в архиве?
Архивацию "на ходу" можно выполнять в том случае, если у вас UNIX и используется LVM, с помощью которого можно делать мгновенные снимки (снапшоты) файловой системы. В остальных случаях, я считаю, это дурь.

и как же тогда

и как же тогда быть - после select pg_start_backup('label') выключить сервер - сделать бекап - включить и далее по инструкции?

Я уже сказал -

Я уже сказал - хотите бакапить сервер на ходу - используйте pg_dump или разбирайтесь с баками так называемых logical logs в WAL. Но никак не файлами на ходу.

logical logs в WAL

logical logs в WAL
ccылку на документацию не покажите, сам не нашел

http://postgresql.ru.net/manu

по указаной линке написано

по указаной линке написано как это хорошо но пошаговой последовательности нет. так как быть - так же как и в мануале по PITR:
- делаю select pg_start_backup ('01')
- делаю pg_dump - копирую не файлы как в мануале
- select pg_stop_backup ('01')

и процедура восстановления
- восстанавливаю данные из полученного бекапа
- копирую не заархивированные wal-лы в pg_xlog восстановленого кластера
- выкладываю recovery.conf
- пускаю сервер - и wal-ы накатываются на восстановленные данные

так?

Я дал вам совет - используйте

Я дал вам совет - используйте pg_dump.
Также я вам писал:
разбирайтесь с баками так называемых logical logs в WAL.
Суть этого совета: ВЫ разбирайтесь!
Не я должен разобраться как вам лучше бакапить ваши данные и как вообще это сделать. а это должны сделать вы. Общие рекомендации я вам для этого дал. Администрировать вашу СУБД за вас я не собираюсь. Простите за столь резкий ответ, но он вызван вашим упорным нежеланием сделать хоть что-либо самостоятельно.

да я и разбираюсь

да я и разбираюсь самостоятельно - сообщение типа ogical logs в WAL это и есть отправка в дальние страны...
я полагал что под громким лейблом postgresql.ru найдутся более адекватные советчики.
если моя настойчивость вас раздражает - вы админ блокируйте акаунт.

Меня раздражает не ваша

Меня раздражает не ваша настойчивость, а ваше желание, чтобы кто-то всё сделал за вас.
Возможно тут найдутся такие люди - не буду им мешать, но сам (повторюсь) ничего за вас делать не собираюсь. Если вы считаете, что посыл к документации - это посыл в дальние страны, то, наверное, вам действительно лучше поискать другое место, где вам всё разжуют и положат в рот. В чём была ваша ошибка вам сказали, общий метод как сделать бакап на ходу вам сказали, даже ссылку нашли, которую вы почему-то не смогли. Что-то не работает, из того, что вы пытались сделать по документации? Если да, пишите что пытались и что не работает, тогда будем разговаривать конкретно, а не в стиле "я почитал... так ли надо сделать?"

Блокировать ваш аккаунт не вижу смыла, как и стирать данный пост - пусть и другие видят, что на этом сайте надо сперва почитать документацию, подумать и попробовать, и если не работает потом уже задавать вопросы, а не просить добрых дядей сделать всё за них. Хотите заслужить уважение - разберитесь, напишите статью в подробностях, будет видно, что вы настойчивый и умеющий думать человек. Если не хотите разбираться или у вас нет времени, то почему вы думаете что оно есть у нас?

добрых дядей - это конечно

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

а та линка которую вы невероятным усилием воли извлекли из всемирного контента ничего подобного не содержит.

моя ошибка в том что лейбл postgres.ru попутал с postgres - нужен adobe - пожуйте adobe.ru, microsoft - microsoft.ru, postgres - postgres.ru а тут и говорят ниче не знаем спросите у того кто писал, разбирайтеся сами. назавались чтоль - добрые или злые дяди но не postgres.ru.

и все таки мы общаемся

Общаемся. Потому что я хочу

Общаемся. Потому что я хочу чтобы вы меня поняли - соглашаться со мной или нет - решать вам.

любой мануал подразумевает четкую последовательность действий при выполнении которых производитель гарантирует качественное функционирование
Хорошо, давайте далеко не ходить. Возьмите мануал Oracle или Informix и извлеките оттуда чёткую последовательность действий, чтобы у вас всё работало в том же ключе, который вы хотите от PostgreSQL (бакап архив-логов). И ничего у вас не выйдет. Не выйдет потому, что продукты кроссплатформенные с кучей ручек и настроек и на все случаи жизни мануал не напишешь. Надеюсь вы не будете говорить, что Oracle или Informix - это поделки?

Поэтому никакой чёткой последовательности по принципу - нажал именно вот эту кнопку и получил то, что захотел не будет. Есть общие принципы функционирования, которые описаны в мануале (из которого я дал вам ссылку и ссылка на который висит на главной странице. но почему-то вы её в упор не замечаете). Если у вас есть желание разобраться и настойчивость - разберётесь. Разберётесь внимательно прочитав мануал. сделав несколько экспериментов. Не хотите разбираться - вам прямая дорога в платную поддержку, где вы платите деньги, а вам всё делают.

Почему-то человек приходящий скажем на php-форум говорит: ребята мне нужно распарсить такую-то строку, чтобы получить то и это. Ему говорят - это можно сделать с помощью таких-то функций. Он говорит: спасибо, пошёл читать мануал. А по аналогии с вами он должен быть сказать: "функции - это фигня, вы мне программу напишите как это сделать или дайте мне чёткую и однозначную последовательность действий". Вы сами догадаетесь, что скажут в ответ на подобный запрос?

А по поводу лейблов даже опущу - мне смешно. Любому кто прочитает и кто в теме тоже будет смешно - не вижу смысл это перетирать.

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

вот как получилось. не смотря

вот как получилось. не смотря на то что file level backup работающего сервера это дурь - еще раз перечитал мануал. tar не понравился - с абсолютными путями в архиве неудобно, попробовал rsync - и как будто заработало за пару дней сделал тестовых 10 восстановлений - работает. сделал слейв - тоже работает. теперь остается тестировать.

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

C:\PostgreSQL\bin\pg_dump.exe

C:\PostgreSQL\bin\pg_dump.exe --host 192.168.1.1 --port 5432 --username postgres --format custom --blobs --file "111.backup"

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023