|
Тема |
Re: Синхронизация на релативни бази данни [re: NikB] |
|
Автор |
salle (един такъв) |
|
Публикувано | 20.12.08 21:48 |
|
|
"1. Записите в преобладаващата част таблици се променят (добавят и редактират) само в ИЦБД, а промените се отразяват по всички ЛБД. Тази синхронизация означаваме с "MA" синхронизация: "Main to All". "
Този вид репликация е вграден в MySQL. Не ти трябва нищо допълнително.
"2. Вторият вид синхронизация позволява редактиране и добавяне на записи във всички бази данни. Осигурява се механизъм за синхронизиране на всички сървъри, както и за !!!> регистриране и !!!> решаване на колизии. Тази синхронизация означаваме с "AA" синхронизация: "All to All". "
Това донякъде е възможно в MySQL, но трябва да се погрижиш за колизиите "на ръка". Една често използвана техника е с auto_increment колонки настроени така, че различните сълвъри да генерират различни стойности.
Връзката всъщност е в кръгче а не е всеки със всеки.
По принцип Репликацията на MySQL поддържа верижно (или каскадно ако предпочиташ) като веригата може да се затвори.
"отворена верига"
A -> B -> C
или "затворена"
A -> B
^ |
| v
D <- C
Вариант 3. не се поддържа. Планирано е за в бъдеще под името
Muli-source Replication.
При всички случаи има предвид, че Репликацията в MySQL е асинхронна което я прави идеална когато данните се синхронизират периодично или връзката е лоша, бавна, непостоянна. Не е удачен вариант обаче ако ит трябва синхронна работа или някакво гарантирано забавяне между възлите.
|
| |
|
|
|