Назад | Перейти на главную страницу

Являются ли коллизии базы данных Master-Master проблемой даже при автоматическом приращении?

Я довольно много читал об этом, и я все еще не уверен, где я нахожусь.

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

Теперь, когда MySQL (я использую 5.1 в Debian и Ubuntu) имеет автоинкремент, можно ли этого избежать и подойдет ли он для производства?

Я посмотрел на MMM для включения только одного мастера для записи, но у него есть свои проблемы, и моя топология действительно ориентирована на то, чтобы два мастера получали записи.

Я не уверен, что верю в это: http://www.neocodesoftware.com/replication/

Могут ли какие-нибудь эксперты по MySQL помочь? Огромное спасибо.

--РЕДАКТИРОВАТЬ--

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

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

  1. auto_increment_increment
  2. auto_increment_offset

auto_increment_offset должен быть установлен таким образом, чтобы каждый мастер имел уникальное значение, обычно 1 для первого, 2 для второго и т. д.

auto_increment_increment - это размер шага приращения, который должен быть не меньше количества мастеров в цепочке. например Для простой настройки двух серверов значение будет 2 (или больше).

Просто невозможно заставить его работать надежно без большого количества настраиваемого кода. Проблема в том, что асинхронная репликация будет приводить к коллизиям и конфликтам, которые необходимо разумно разрешать с помощью грамотно написанных и безупречно реализованных алгоритмов. У тебя этого не будет. Использовать Настройка кластера MySQL вместо этого, если вам нужны операции с несколькими мастерами и вы можете справиться с ограничениями, которые они накладывают.