>>> 3) правим конфиг второго инстанса
>> Уточняю:
>> * прописываем новый путь к БД
>> * прописываем новый файл сокета
>> * прописываем новый файл пид-файла
>> * прописываем новый порт
>> * ??
> А вы представляете как это потом все обновлять? :) И не забываем,
> что в 5.5 очень многое поменялось, в том числе и либы А что обновлять? Да никаких проблем.
Конфиг-файл остается прежним. инит-скрипты тоже мало меняются. Скопированные инит-скрипты так вообще не тронутся обновлением. Соответственно, дублирующие инстансы запустятся без проблем. А основной - тоже запустится, это задача пакета чтобы он работал.
Бинари я делаю симлинками (не хардлинками, уточнил специально) на основной бинарь, т.е. пакет обновит бинарь и всё будет в шоколаде.
-----------------------
стоп, туплю. Всё вышенаписанное - для запуска нескольких копий одной версии мускула..
Короч, чтобы запустить две версии одного софта...
Я делал на одном хосте одновременно и пых-5.2 и пых-5.4 =) под дебианом.
без:
>Хотелось бы избежать необходимости установки виртуалки (kvm/virtualbox/openvz/...)
Всё просто. Заинсталлировал через debian-installer или как там его, отдельную копию дебиана в отдельный каталог, потом сделал туда чрут и наслаждался жизнью.
>А вы представляете как это потом все обновлять? :) И не забываем, что в 5.5 очень многое поменялось, в том числе и либы
Собственно, получается как бы две системы, основная и в чруте, обновлять придется каждую отдельно.
В чрутнутой системе запускается только апачик с нужным пыхом. Может биндиться на любой адрес системы, это не о-вз, ограничений нет.
инит-скрипт:
[...some lines was skipped...]
case "$1" in
reload)
/usr/sbin/chroot /web/k/chroot/ /etc/init.d/apache2 $1
log_end_msg $?
;;
start)
log_daemon_msg "Starting web server" "apache2-k"
/usr/sbin/chroot /web/k/chroot/ /etc/init.d/apache2 start
log_end_msg $?
;;
stop)
log_daemon_msg "Stopping web server" "apache2-k"
/usr/sbin/chroot /web/k/chroot/ /etc/init.d/apache2 stop
log_end_msg $?
;;
force-reload|restart)
$0 stop
$0 start
;;
status)
status_of_proc -p $PIDFILE $DAEMON apache2-k && exit 0 || exit $?
;;
*)
echo "Usage: /etc/init.d/apache2-k {start|stop|restart|force-reload|status}"
exit 1
;;
esac
exit 0