MySQL/MariaDBを/rootや/home以下へ設定している環境をアップデートした時にMySQL/MariaDBが起動出来なくなってしまう!?

Pocket

私の環境で発生した問題です。
CentOS 8.x/Rocky Linux 8.xにMySQL/MariaDBをインストールし、データベースを/home以下へ保存していました。
容量とパーティションの関係でそうなったのですが、これがOS/MySQL/MariaDBアップデート時に悲劇を招きました。

無事アップデートを終えたかに見えた状態でOSを再起動してみると、データベースが起動していない!?
試しにサービスの起動を以下のコマンドで試みるも、起動してくれない。

systemctl start mariadb

/etc/my.cnf.d/に変更が行われているのではないかと疑ってみたが、どうやら関係はない。

結果はコレだった!!

/usr/lib/systemd/system/mariadb.service
もしくは
/usr/lib/systemd/system/mysql.service

この中で、バージョン情報などが変更されているのだが、以下の設定がデフォルトに戻っていた。

ProtectHome=true

この設定は、/rootや/home以下にデータベースを保存する設定をした際に変更した経緯がある。
アップデートによりファイルが更新されて、デフォルトに戻されていたのだ!

設定のバックアップファイルなどは残っておらず、結論として当該ファイルの内容は完全に初期化され、過去の設定は残っていなかった。

設定を以下の様に変更した。

ProtectHome=false

その後、以下のコマンドで設定を再読込みしサービスを起動したら正常に起動することが出来た。

systemctl daemon-reload 
systemctl start mariadb    

この問題をどう回避するべきなのだろう?
通常は発生しないがバグなのだろうか?仕様なのだろうか?
アップデート前に、sosreportなどで設定をバックアップしておくべきなのだろうか?
でも、バックアップを確認するのも大変ですよね。困った事象です。
お気をつけ下さい。。。。
と言いつつ、ここを見ている人は、既に嵌った人ですよね。
ご愁傷さまでしたm(__)m

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください