Комментарии 16
Недавно поднимался такой же вопрос. Использовал Docker, проще в разы
+16
Спорить не буду, скорее всего это действительно проще, но сам Docker уже как отдельный инструмент идет, а тут, считай, нативная реализация.
0
Эх. Не хочу натыкаться на хейтеров systemd, но вынужден сказать, что для запуска второго инстанса mysql при, правильно написанном unit-файле, достаточно выполнить что-то вроде:
systemctl start mysql@second
+3
Коллега, это как-то слишком сложно.
В тот же my.cnf добавляется секция [mysqld2], в которую прописывается всё новое.
Потом создаются диры для второй бд, проводится туда mysql_install_db, а потом оба сервера рулятся методом mysqld_multi.
В тот же my.cnf добавляется секция [mysqld2], в которую прописывается всё новое.
Потом создаются диры для второй бд, проводится туда mysql_install_db, а потом оба сервера рулятся методом mysqld_multi.
+3
Для того, чтобы начать «рулить» несколькими экземплярами DB с помощью mysqld_multi, нужно сначала останавливать экземпляр, что запущен. Иногда остановка mysql-сервера сама по себе критична, а нужно что-то быстро развернуть, отдать какие-то данные, а потом свернуть (например, достать нужную базу и поработать с ней из бэкапа).
-1
может я что-то не понимаю, но в какой ситуации потребуется подобное действие?
Не проще ли вынести второй сервер на отдельную машину?
Не проще ли вынести второй сервер на отдельную машину?
+2
Согласен. Имхо такое может быть только обосновано указом «сверху» экономить ресурсы (читай ценой производительности))
0
Не согласен. Разворачивание многих инстансов на одном сервере очень полезно если это будут слейвы для бекапа данных основных баз. У меня это все сделано правда в отдельных виртуалках KVM на одной машине, все никак руки не дойдут запустить на одной для экономии ресурсов (в первую очередь диска).
0
а смысл в бекапах на одной машине? уж лучше вынести слейв на другую физическую и уже там делать бекапы. иначе физически грохается винт на сервере — и все, придется разворачивать новый сервер и на него накатывать бекапы. в случае с слейвом на другой физической машине просто переназначаем его и все, простоя почти нет
0
Наверное неверно выразился.
На отдельной машинке развернуть ТОЛЬКО слейвы к основным базам. И они уже бекапятся через bacula в хранилище.
В итоге получается двойная защита: слейв с моментальным моментом состояния и периодичный бекап бакулы. Это сильно помогло нам когда рухнули серверы с основными базами.
Простое переключение не всегда помогает к сожалению. Бекапим с ДЦ в офис.
На отдельной машинке развернуть ТОЛЬКО слейвы к основным базам. И они уже бекапятся через bacula в хранилище.
В итоге получается двойная защита: слейв с моментальным моментом состояния и периодичный бекап бакулы. Это сильно помогло нам когда рухнули серверы с основными базами.
Простое переключение не всегда помогает к сожалению. Бекапим с ДЦ в офис.
0
шел год 2015, человечество уже давно придумало для решения такого рода задач контейнеры (openvz, lxc, libcontainer, rocket, virtuozzo, pcs, freebsd jails, solaris zones и т.д. )
+2
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Запуск двух и более инстансов MySQL на одном Linux-сервере