|
|
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
Добрый день! Начинаю разбираться с постгрес, но в упор не пойму, хоть и настроил и работает. Есть два вида нативной репликации: 1) потоковая - в упор не пойму как это все работает, при потоковой данные пишутся в xlog? а потом считываю на слейв? 2) файловая - пишется все транзакции на мастере в xlog и далее вручную копируется на слейв и дальше слейв читает xlog и применяет изменения?... тогда собственно какое великое отличие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 10:52:24 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter123Добрый день! Начинаю разбираться с постгрес, но в упор не пойму, хоть и настроил и работает. Есть два вида нативной репликации: 1) потоковая - в упор не пойму как это все работает, при потоковой данные пишутся в xlog? а потом считываю на слейв? 2) файловая - пишется все транзакции на мастере в xlog и далее вручную копируется на слейв и дальше слейв читает xlog и применяет изменения?... тогда собственно какое великое отличие? при потоковой лаг почти минимален. при файловой, слейв отстает на 1 сегмент xlog, т.е. мастер произвел запись 14Мб в xlog сегмент, и пока недопишет оставшиеся 2 мб, то слейв не получит этот сегмент. вобще эти способы реализуют одновременно где второй способ страхует первый, на случай долгой потери связи... p.s. тут где то в этом форуме скидывали линк на книгу PostgreSQL Replication (PACKT.2013) от Z.Boszormenyi H.J.Schonig. почитайте, довольно легко написано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 11:35:54 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
daevy, Спасибо! 1) А как настраивается файловая репликация? я должен вручную переправлять xlog на slave? а что я должен прописвать на слейве в конфигах(без потоковой)? 2) При потоковой репликации мастер же всё равно все транзакции пишет в xlog и slave оттуда считывает или как происходит потоковая репликаиця? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 11:48:48 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter1231) А как настраивается файловая репликация? я должен вручную переправлять xlog на slave? а что я должен прописвать на слейве в конфигах(без потоковой)? master postgresql.conf: wal_level = archive (или hot_standby) archive_mode = on archive_command = 'scp %p postgres@standby:/archivedir/%f' slave recovery.conf restore_command = 'cp /archivedir/%f "%p"' Этого будет достаточно для репликации через архивы. После перезапуска, мастер будет копировать архивы на слейв по ssh. А слейв будет копировать уже локально. Конфиги не ограничены этими командами, так что тут как фантазия разыграется. carter1232) При потоковой репликации мастер же всё равно все транзакции пишет в xlog и slave оттуда считывает или как происходит потоковая репликаиця? Загляните в ps aux (top -u postgres), у мастера есть wal sender процесс, у слейва - wal receiver. Мастер толкает все изменения на слейв через sender, а слейв принимает через receiver. Также полезно посмотреть в pg_stat_replication на мастере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 13:03:15 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
нашел таки... http://www.sql.ru/forum/1074936/ebook-postgresql-replication неполенитесь прочтите, там всего 200 страниц, зато многие вопросы сразу отпадут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 13:15:22 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
daevy, В этой книге нет ничего такого, чего нет в официальной документации. Если честно, то книга сильно разочаровала. Официальная документация как всегда на том же сайте. Пункт репликации с подробными примерами выделен особо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 14:23:38 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
daevy, Спасибо большое! Я читал много мануалов, просто хотел структурировать свои знания! при потоковой разве в xlog ничего не пишется? а если я оставнолю реплику? как slave догонит мастер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:19:16 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter123daevy, Спасибо большое! Я читал много мануалов, просто хотел структурировать свои знания! при потоковой разве в xlog ничего не пишется? а если я оставнолю реплику? как slave догонит мастер? в xlog пишется все обновления базы вне зависимости от наличия или отсутствия реплики (там есть детали но на вашем уровне они не важны совершенно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:23:30 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter123, Более того, слейв после остановки сможет догнать мастер только в случае, если на мастере хранится достаточное количество WAL файлов. If you use streaming replication without file-based continuous archiving, you have to set wal_keep_segments in the master to a value high enough to ensure that old WAL segments are not recycled too early, while the standby might still need them to catch up. If the standby falls behind too much, it needs to be reinitialized from a new base backup. If you set up a WAL archive that's accessible from the standby, wal_keep_segments is not required as the standby can always use the archive to catch up. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:38:02 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
/\/\/\/\/\/\, а WAL логи находятся в pg_xlog ? я просто пробую так сделать, оставноил репликацию на slaveб создаю на мастере что нибудь, и удаляю из папки(pg_xlog) все файлы и на мастере и на слейве) 2) запускаю репликациию) и все измнеения на слейве появляются =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:46:44 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter123 и удаляю из папки(pg_xlog) все файлы и на мастере и на слейве) а вот этого никогда делать ненужно. никогда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:49:02 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
carter123, WAL логи находятся в pg_xlog Да. Пожалуйста, повторите ситуацию. Но только убедитесь, что образовалось несколько WAL файлов (выполните действие которое меняет очень много данных и/или специальной командой принудительно скиньте данные в лог - pg_switch_xlog() ). О результатах сообщите. Подозреваю, что Вы выполнили немного действий (менее чем на 16MB - это размер WAL файла по умолчанию), поэтому они могли остаться в еще не скинутом на диск буфере. Оттуда их и достала потоковая репликация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 16:53:51 |
|
||
|
нативная репликация - виды
|
|||
|---|---|---|---|
|
#18+
daevy, да у меня тест сервер =) чего бы не попробовать да Вы правы! мастер сломался! восстановил пока что ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2014, 17:27:18 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=38649967&tid=1998671]: |
0ms |
get settings: |
4ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
417ms |
get topic data: |
8ms |
get forum data: |
4ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 702ms |

| 0 / 0 |
