SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.12.2013 06:47:04

titanrat
Участник
Зарегистрирован: 24.10.2012
Сообщений: 5

Синхронизация двух БД.

Здравствуйте. Не нашел к сожалению на форуме подходящей мне темы, поэтому задам похожий вопрос еще раз.
Есть 2 базы данных на разных компьютерах, мне нужно постоянно держать их в идентичном состоянии, при этом падение одной из двух баз, не должно впоследствии вызывать конфликтов.

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

Подскажите пожалуйста можно ли как то настройками или программно решить эту задачу?

Неактивен

 

#2 14.12.2013 14:15:17

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Синхронизация двух БД.

Вторая причина изложена неточно. На самом деле репликация передает данные когда slave их сам забирает. То есть, если вторая машина была в отключке, то когда она включится, выполнит все запросы и догонит мастера.

Лучше откажитесь от идеи того, что база на компьтерах, которые могут постоянно отключаться, иначе решение не будет простым. Почему нельзя использовать одну общую базу на машинах, которые не отключаются?

Неактивен

 

#3 14.12.2013 23:46:37

titanrat
Участник
Зарегистрирован: 24.10.2012
Сообщений: 5

Re: Синхронизация двух БД.

rgbeast написал:

Вторая причина изложена неточно. На самом деле репликация передает данные когда slave их сам забирает. То есть, если вторая машина была в отключке, то когда она включится, выполнит все запросы и догонит мастера.

Лучше откажитесь от идеи того, что база на компьтерах, которые могут постоянно отключаться, иначе решение не будет простым. Почему нельзя использовать одну общую базу на машинах, которые не отключаются?

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

При падении первого - он не заберет измененные данные с слейва после восстановления.

Неактивен

 

#4 15.12.2013 01:14:01

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Синхронизация двух БД.

Можно сделать репликацию master-master при условии, что Вы настроите какую-то
систему, которая будет позволять писать только в один из мастеров. Peacekeeper /
MySQL HA / что-нибудь еще.

Если Вы хотите писать одновременно в два мастера, то надо смотреть в сторону
кластерных решений. MySQL cluster / Percona cluster. Но это подразумевает синхрон-
ный коммит, поэтому не ждите большой производительности в этом месте.

Неактивен

 

#5 16.12.2013 06:05:43

titanrat
Участник
Зарегистрирован: 24.10.2012
Сообщений: 5

Re: Синхронизация двух БД.

Запросы не могут быть одновременно от двух серверов к одной строке в моем случае. Конфликты исключены.
Подскажите пожалуйста как Master-Master корректно настроить? Можно ли это сделать средствами phpmyadmin или какой либо еще аналогичной программы?

Неактивен

 

#6 18.12.2013 02:02:35

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Синхронизация двух БД.

Как настроить master-master написано, например, здесь: http://www.ossg.ru/wiki_pda/Admin/%D0%9 … B2%20MySQL

Программы здесь не помогут, нужно вручную настраивать.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson