Как запустить несколько версий MySQL на одном сервере? Это на коробке, на которой запущен SUSE Enterprise Server 10. Первоначальная установка MySQL v5.0.45 была выполнена через RPM. Теперь меня просят настроить вторую версию MySQL под управлением 5.1.36 для одновременной работы с предыдущей версией. Я загрузил tarball для двоичного дистрибутива MySQL v5.1.36.
Я ищу подробности о том, как его настроить, а также любые рекомендации по управлению двумя разными версиями. Где у меня один my.cnf или несколько? Должен ли я хранить их в / etc или, возможно, в базе каждого экземпляра MySQL? Как лучше всего запускать и выключать оба сервера? и т.д.?
Вы можете использовать mysqlmanager или mysqld_multi. mysqlmanager более мощный, но mysqld_multi намного проще настроить, и обычно это мой выбор
Вам просто нужен один /etc/my.cnf, как это (из руководства mysql):
[mysqld_multi]
mysqld = /usr/local/bin/mysqld_safe
mysqladmin = /usr/local/bin/mysqladmin
user = multi_admin
password = multipass
[mysqld2]
socket = /tmp/mysql.sock2
port = 3307
datadir = /usr/local/mysql/var2
[mysqld3]
socket = /tmp/mysql.sock3
port = 3308
datadir = /usr/local/mysql/var3
[mysqld4]
# ...
страница руководства: mysqld_multi - Управление несколькими серверами MySQL
Работает нормально. Просто укажите отдельный conf, порт, sock и т. Д. Лично я, вероятно, поддерживал бы /etc/my.server1.cnf
и /etc/my.server2.cnf
для индивидуальных настроек сервера. А для запуска просто скопируйте /etc/init.d/mysqld
(или как там это называется для Suse), и это должно быть просто вопросом обновления некоторых переменных, чтобы новый скрипт запускал второй сервер.