SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 29.06.2017 16:23:49

baltazarbd
Участник
Зарегистрирован: 29.06.2017
Сообщений: 2

Выборочная репликация

Приветствую !

На данный момент имеем mysql 5.5.41-0 стандартный  комплект  master и 3 slave'a
На мастере пишутся bin для всех баз , на репликах выборочно забираем по базам кому что нужно

Поступила задача сделать выборочную репликацию по значению  конкретного поля в таблице
Пример:

|id|type|model|
|1| a    |xx      |
|2| b    |xy      |
|3| c    |yx      |
|4| a    |zz      |
|5| a    |yy     |

Соотвественно нужно чтобы на реплику из этой таблицы попадали данный где   type=a , подскажите пожалуйста такой кейс возможен средствами базы ?

Как вариант рассматриваем  выборочные дапмы и заливки, или написание своего чего либо , что будет из бинов или логов запросов отлавливать и  пулять запросы которые попадают под условия , но это костыльные варианты которых хотелось бы избежать

Неактивен

 

#2 29.06.2017 16:47:27

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

Re: Выборочная репликация

Штатного средства нету, и есть ощущение, что у вас плохая структура базы, раз понадобилось такое сделать.

Вот варианты разной степени сложности/костыльности, которые можно реализовать:

1. Распилить данные правильно. В данном случае — отдельные таблицы для type a / type b (и возможный VIEW над ними для каких-то группировочных запросов или просто переписывание запросов).

2. Применение в отдельную таблицу. Делаете на реплике таблицу типа blackhole и вешаете на нее триггеры, которые в таблицу с другим названием применяют данные с type = a.

Неактивен

 

#3 29.06.2017 17:38:25

baltazarbd
Участник
Зарегистрирован: 29.06.2017
Сообщений: 2

Re: Выборочная репликация

На счет структуры это больной вопрос, который  потихоньку исправляем ...)
1 вариант будет слишком болезненный по затратам и рискам
а второй будем иметь в ввиду

Спасибо за быстрый ответ !  тему можно закрывать

Отредактированно baltazarbd (29.06.2017 17:38:59)

Неактивен

 

Board footer

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