Аварийное переключение MySQL с использованием MySQL Proxy
-
23-08-2019 - |
Вопрос
Я рассматриваю реализацию механизма аварийного переключения для базы данных MySQL с использованием MySQL Proxy (http://forge.mysql.com/wiki/MySQL_Proxy)
Моя предлагаемая установка выглядит следующим образом:Один активный сервер MySQL и один пассивный MySQL с включенной двусторонней репликацией между ними обоими.MySQL Proxy — это средство аварийного переключения, которое находится между этими двумя серверами и перенаправляет трафик на резервный в случае сбоя активного и наоборот.
Просто хотел узнать опыт сообщества по использованию MySQL Proxy в качестве инструмента аварийного переключения для двух серверов MySQL.Есть какие-нибудь ошибки, на которые мне следует обратить внимание?Есть ли еще какие-нибудь советы/настройки/хаки, которые помогут импровизировать эту настройку?
И да, я использую Windows, и, следовательно, мне нужен MySQL Proxy.
Решение
MySQL Proxy — действенное решение, многие люди используют его для производственных систем с высоким трафиком.Есть несколько вещей, которые следует запомнить:
- Он все еще находится в альфа-версии, поэтому вам действительно нужно тщательно его протестировать, прежде чем внедрять.
- В вашем приложении должен быть предусмотрен метод аварийного переключения в случае сбоя прокси-сервера.Если это веб-сайт, возможно, сообщение «мы скоро вернемся» и система уведомлений, сообщающая вам, что он не работает.MySQL Enterprise Manager очень хорош для этой цели, хотя и стоит денег.
- Он добавит большую задержку, чем аппаратный балансировщик нагрузки, но позволит вам гораздо больше настраивать его с помощью Lua.
Другие советы
Я уже некоторое время использую прокси-сервер MySQL и нашел его очень полезным.Однако, похоже, в версии 0.6.1 появились новые ошибки по сравнению с 0.6.0.Поэтому вам следует быть осторожным при выборе версий.Я думаю, что это отличный продукт для аварийного переключения и внедрения запросов, но, поскольку он находится в альфа-версии, следует ожидать ошибок.
http://forums.mysql.com/read.php?146,202953,202953#msg-202953