Почему после обновления пакета mysql конфигурационный файл вернулся к дефаулту?
Добрый день!
Столкнулся с неприятной и странной для меня проблемой.
На одном из серверов оказалось пол года не настроена автоматическое обновление пакетов безопасности.
И когда проблема была обнаружена, был установлен и запущен unattended-upgrade после чего он обновил все пакты связанные с безопасностью, в их числе оказался mysql
Как оказалось после обновления, конфигурационный файл my.cnf в котором было все хорошо настроено для слева просто исчезло и файл вернулся к стартовому значению.
Возможно кто то с подобным сталкивался, или знает в чем причина и как главное как этого избежать в будущем.
Preconfiguring packages ...
(Reading database ... 141149 files and directories currently installed.)
Preparing to unpack .../mysql-server-5.7_5.7.27-0ubuntu0.18.04.1_amd64.deb ...
Unpacking mysql-server-5.7 (5.7.27-0ubuntu0.18.04.1) over (5.7.26-0ubuntu0.18.04.1) ...
Preparing to unpack .../mysql-server-core-5.7_5.7.27-0ubuntu0.18.04.1_amd64.deb ...
Unpacking mysql-server-core-5.7 (5.7.27-0ubuntu0.18.04.1) over (5.7.26-0ubuntu0.18.04.1) ...
Processing triggers for ureadahead (0.100.0-20) ...
Setting up mysql-server-core-5.7 (5.7.27-0ubuntu0.18.04.1) ...
Processing triggers for systemd (237-3ubuntu10.11) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Setting up mysql-server-5.7 (5.7.27-0ubuntu0.18.04.1) ... update-alternatives: using /etc/mysql/mysql.cnf to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
кажется подсказка в этой строке "update-alternatives: using /etc/mysql/mysql.cnf to provide /etc/mysql/my.cnf (my.cnf) in auto mode"
Но вопрос почему так случилось и как этого избежать
Антон Винник, Сами себе мину заложили, прикольно конечно ткнуть кнопку и забыть но эта автомагия работает скромно говоря "странно" :)
apt update && apt upgrade в помощь.
Свои изменения надо складывать в каталог /etc/mysql/conf.d/
Он указан в самом конце /etc/mysql/my.cnf !includedir /etc/mysql/conf.d/
/etc/mysql/mariadb.cnf вообще из трёх строк состоит:
Можете пожалуйста подсказать как именно я сам так попросил систему, и самое главное как я могу попросить ее так больше не делать ?))
За статью отдельное спасибо!
угу как правило так и происходит , но видел пару раз когда ничего не спрашивалось а ставилось перед фактом ;) , как правило это когда синтаксис меняется.
Антон Винник, Виктор Таран, то есть Ansible, Chef, Puppet уже не в моде?) Infrastructure as a Code куда надёжнее чем бэкап /etc. И вот тут уже git очень помогает
Руслан Федосеев, в зависимости от инфроструктуры.
Если у вас 1 сервер то наверное все это больше костылей чем пользы, поскольку нужна стабильнотсь простота и надежность, тот же zabbix ставить на 1 сервер это глупость, именно из за конечной сложности и монитиоринга системы мониторинга.
Я привел самый "ПРОСТОЙ" вариант решения.
все остальные решения так же имеют право место быть, но возможно не оправданно учить Ansible, если вам нужно забэкапить 1 папку.
Руслан Федосеев, смотря как и кто следит за сервером, я вкурсе кто и что менял за неделю. Кому-то такой вриант не подходит. если серверов 50 то конечно тут уже ничего не всмомнить, тем более если они не зеркальные.