Установка mysql через apt-get с нестандартными каталогами данных и журналов
Есть ли способ установить mysqld через apt-get и использовать путь по умолчанию для файлов данных?
Я знаю, что могу установить его с настройками по умолчанию, а затем переместить вещи (я сделал это), но тогда у меня есть около десятка разных мест, которые мне нужно обновить (4-5 в my.cnf, 6-8 для app-armor и я думаю, что было кое-что еще, что я забыл).
Изменить: я предполагаю / надеюсь, что все соответствующие файлы конфигурации создаются во время установки, а не жестко закодированы как статический контент. Предполагая, что мне нужен способ передать флаги apt-get для настройки переменных, используемых для указания соответствующих путей.
3 ответа
Все, что вы упомянули, было подходящим, а не какое-то конкретное распространение
Я только что провел быструю проверку сценариев preinst / postinst на исходном тексте Debian Lenny на сервере mysql. Эти папки жестко запрограммированы как часть включенных сценариев управления и файла конфигурации по умолчанию. В Debian Lenny нет волшебного инструмента, и я подозреваю, что другие перенаправят папки data / log до завершения установки. Debconf не используется в версии пакета Mysql, на которую я смотрел, но этот инструмент обычно используется для установки параметров для других пакетов.
Таким образом, краткий ответ, что вам, вероятно, нужно будет исправить вещи после установки. Если вы возьмете исходный код пакета и посмотрите на скрипты в /var/lib/dpkg/info/mysql*
Вы должны получить хорошее представление о том, что именно нужно изменить.
Вам нужно будет создать свои собственные пакеты mysql, если вы хотите, чтобы они устанавливались с особыми путями только для вас. Было бы проще использовать символические ссылки или привязывать монтирования для перемещения того, что вы хотите переместить, туда, куда вы хотите.
В противном случае ваш выбор - это правильный способ создания пользовательского пакета из исходного кода и очень, очень неправильный способ взлома существующего пакета с помощью ar
, изменив все пути и конфигурационные файлы, затем снова собрав их вместе.
В зависимости от вашего дистрибутива вы можете перезаписать настройки mysql в файле /etc/mysql/conf.d/...
?