Re: [pgsql-ru-general] Потоковая репликация
От | Sergey Konoplev |
---|---|
Тема | Re: [pgsql-ru-general] Потоковая репликация |
Дата | |
Msg-id | CAL_0b1tTi9qmHtVDqHrSpno-BruhgCQU4HdhtHPMdvEVmwh2mg@mail.gmail.com обсуждение исходный текст |
Ответы |
Re: Потоковая репликация
|
Список | pgsql-ru-general |
Привет, 2013/7/31 Dmitry E. Oboukhov <unera@debian.org>: > 1. после остановки реплики по какой-то причине если она простояла > дольше определенного времени то уже запустить ее можно будет только > сделав rsync файлов на нее. > > на эту тему есть ручка wal_keep_segments на мастере. но она в размере > файлов. > > как можно оценить сколько нужно поставить например чтобы реплику можно > было на час остановить? Cмотрим время самого старого wal файла ls -lt pg_xlog | head самого нового ls -lt pg_xlog | tail их общее количество (-1) ls -l | wc -l и делим это количество на интервал времени, получаем сколько wal файлов генериться в час. Конечно же это примерно, тут надо ещё учитывать динамику, т.к., например, днём запись может быть больше чем ночью. > 2. хочу сменить мастера "онлайн". (то есть реплику сделать мастером с > минимальным простоем) > поэтому хочу сперва немного переписать клиента чтобы он спрашивал у > реплики не стала ли она мастером и если да использовал бы ее. > > вопрос: можно ли каким-то запросом выяснить: то куда приконнектились - > мастер или реплика? Обычно заводятся IP или DNS aliases, которые фиксируются за логическими мастером/репликой, т.о. приложению не надо проверять к кому оно коннектиться. Это идеальный вариант. Но, если очень надо в приложении определять, то select pg_is_in_recovery(); true значит реплика. > 3. вычитал что можно включить архивирование xlog'ов и вроде как > реплика при долгом простое может из архива xlog'и вытаскивать, но не > понял как это настроить. > может кто пояснить? Это делается с помощью т.н. continuous archiving (http://www.postgresql.org/docs/9.2/static/continuous-archiving.html), также советую почитать про pg_receivexlog (http://www.postgresql.org/docs/9.2/static/app-pgreceivexlog.html), как альтернативу archive_command (см. continuous archiving). -- Kind regards, Sergey Konoplev PostgreSQL Consultant and DBA Profile: http://www.linkedin.com/in/grayhemp Phone: USA +1 (415) 867-9984, Russia +7 (901) 903-0499, +7 (988) 888-1979 Skype: gray-hemp Jabber: gray.ru@gmail.com
В списке pgsql-ru-general по дате отправления: