From: iceb@svitonline.com
To: "iceb@svitonline.com" <community@altlinux.ru>
Subject: Re[4]: [Comm] Репликация базы данных PostgreSQL на двух компьютеров
Date: Wed, 17 Mar 2004 17:56:10 +0200 (EET)
Message-ID: <Pine.LNX.4.53L.0403171657520.3304@iceb.home.int> (raw)
In-Reply-To: <498820887.20040317093344@scs-900.ru>
В Срд, 17 Мар 2004, Evgeny Yugov написал(а):
EY> isc> Вовсе нет. Если есть возможность из этого лога получить
EY> текущее
EY> isc> состояние базы - то почему бы его не rsync'нуть ?
EY> А чем вариант rsync в таком случае отличается от pg_dumpall?
EY> Все равно старт/стопать базу прийдется...
А что, лог транзакций в постгресе формируется только по команде,
не в риалтайме ? И для его получения надо базу стопорить ? Так
это не лог тогда называется.
Ну тогда rsync напускать на всю базу. Не бог весть что, но хоть
что-то...
EY>
EY> EY>> isc> PS. И эти люди что-то говорят о преимуществах
EY> перед
EY> EY>> MySQL ...
EY> EY>> А что мускул умеет реплицировать?
EY> isc> Да уж несколько лет как. Я лично его тремя способами
EY> бэкаплю:
EY> isc> 1) репликация - риалтаймовый бэкап
EY> Хм интересно... поподробнее можно?
Да в документации все описано, причем на русском языке. В двух
словах: при запуске резервного сервера он получает от основного
все SQL-запросы на запись, полученные основным сервером с момента
последнего их соединения, каковые резервный и отрабатывает на
своей копии базы. Если оба сервера включены и соединены друг с
другом - то запросы на запись, получаемые основным, на обоих
серверах отрабатываются практически одновременно.
EY>
EY> isc> 2) rsync на дамп и журналы - периодический, раз в час
EY> обычно
EY> isc> 3) некое подобие (2) на виндовую машину - если
EY> поблизости нет
EY> isc> линуксовой
EY>
EY> ps Было бы здорово если бы Вы накидали схемку с коментариями
EY> и
EY> описанием, многие сказали бы спасибо... :o)
Что касается репликации - все (почти) RTFM Справочное
руководство по MySQL версии 4.0.11-gamma где-то на
http://www.mysql.com.
Второй способ - классический, использовался практически на всех
приличных СУБД еще лет 20 назад если не больше. Суть заключается
в следующем:
1) относительно редко выполняется полный дамп базы данных, на
всякий случай с остановом и чеканьем. Получаем большой файл,
который ложим на ленту/съемный диск/другую машину по вкусу.
2) после запуска СУБД ведет т.н. инкрементные журналы, в которых
в реальном времени записываются все изменения, произошедшие со
времени последнего дампа (для первого журнала)
или со времени закрытия предыдущего журнала (для всех последующих).
Получаем много мелких файлов,
причем в ходе работы изменяется только последний. Никакие
рестарты при этом не нужны.
Полученные файлы тоже сохраняются по мере создания, но времени и
ресурсов на это требуется очень немного.
3) goto 1
Понятно, что для сохранения дампа и журналов в сегодняшних
условиях удобно использовать rsync (хотя это не единственно
возможный механизм).
Для восстановления в случае гибели базы она поднимается сначала
из полного дампа, а затем по очереди накладываются все
инкременты.
Более подробно расписывать - времени нет, сорри. Но думаю идея
понятна, а подробности - для этого дока есть.
--
Yura Kalinichenko
next prev parent reply other threads:[~2004-03-17 15:56 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-16 21:41 ` Alexey Vakhov
2004-03-17 14:54 ` iceb
2004-03-18 11:19 ` Felix
2004-03-18 11:59 ` iceb
2004-03-19 2:53 ` Felix
2004-03-19 11:48 ` Nick S. Grechukh
2004-03-18 23:12 ` [Comm] Re: Репликация базы данных PostgSQL " Денис Смирнов
2004-03-17 3:33 ` Re[4]: [Comm] Репликация базы данных PostgreSQL " Evgeny Yugov
2004-03-17 8:15 ` Eugene Prokopiev
2004-03-17 8:59 ` Grigory Milev
2004-03-17 15:56 ` iceb [this message]
2004-03-19 4:15 ` Re[5]: " Evgeny Yugov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.53L.0403171657520.3304@iceb.home.int \
--to=iceb@svitonline.com \
--cc=community@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git