Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: mysql зеркало (master-slave)  (Прочитано 15214 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« : 10-12-2015 05:12 » 

всем привет, я тут с очередным грузом  Улыбаюсь

Есть такая задача - держать всегда актуальную копию БД, доступную только юзерам для чтения.

Master - с этой БД (RW) программа работает, записывая в таблицы сообщения, позволяет редактировать всякие описания и т.д.
Slave - всегда отображает всё, что менялось на Master и используется юзерами только для чтения. Отсюда юзеры могут запрашивать всякие очёты, смотреть лог текущих сообщений и т.д.


Гугление выдаёт примерно такой порядок действий http://wikiadmin.net/nastroika-rieplikatsii-baz-dannykh-mysql/
Но как представлю, что это придётся объяснять пользователям  Здесь была моя ладья...

Есть ли более простые способы? Или как это всё автоматизировать

Ну и какие опасности поджидают ?
« Последнее редактирование: 10-12-2015 05:15 от Алексей++ » Записан

Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 10-12-2015 05:13 » 

вот здесь более сложные движения, но, видимо, из-за того, что связка Master-Master
http://initialize.ru/mysql-master-master-replikaciya/

А мне в моём случае (Master-Slave) автоинкремент 2 не нужно будет делать ?
Записан

RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 10-12-2015 10:17 » 

А зачем объяснять пользователям? Это административная задача!

Кстати, чтобы потом не было головной боли: слейв требует такого же по мощности железа, что и мастер. Иначе может отставать в периоды частого изменения мастера.
Слейв, как и мастер, надо мониторить на валидность. Был случай, когда админы упустили сбой на слейве и он перестал применять бинарные логи, а когда потребовалось переключиться с мастера на слейв, выяснилось, что ... Ж

Цитата
Slave - всегда отображает всё, что менялось на Master

Прими как аксиому: слейв отстает от мастера. Если только что завершил транзакцию на мастере, не жди, что чтение слейва даст такие же данные.
Приложения лучше строить так: если нужны и чтение, и запись, то работать только с мастером, а если нужно только чтение без блокировок, то можно работать или только с мастером, или только со слейвом.

Цитата
А мне в моём случае (Master-Slave) автоинкремент 2 не нужно будет делать ?

Леш, читай мануал внимательно! Это только для multi master для исключения конфликта по PK.
« Последнее редактирование: 10-12-2015 10:22 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 11-12-2015 04:53 » 

Ром, ну, то есть, всю работу по сохранению, а также актуальному отображению новых сообщений из базы надо будет производить на Master, а формирование отчётов, заказанных юзерами, можно повесить на Slave , я так понимаю (для снижения нагрузки на мастер)

Только Slave периодически нужно перезаливать на всякий случай полностью вручную
Записан

RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 11-12-2015 09:12 » 

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

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #5 : 11-12-2015 09:55 » 

мониторить, что идет применение логов.
как это делается ?
Записан

RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 11-12-2015 13:11 » 

Э... Google, how to monitor mysql replication? Ага
http://blog.webyog.com/2012/11/20/how-to-monitor-mysql-replication/
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #7 : 12-12-2015 07:36 » new

спасибо, почитаю
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines