MattetmostをMySQL最終版にアップグレード【v7.8.10→v10.11.22】

私は公私ともにslack課金勢ではなくMattermost team EditionをVPSサーバーで常用しています。
slackを2017年頃から個人的メモアプリとして使い始め、気づけば10個のアカウント。そんな状況でしたから数年前のslack有償化であやうく破産しそうになり(誇張)、実質サーバ代だけで運用できるmattermostに移行した経緯があります。

さてそんな平穏なMattermost生活の昼下がり、スマホでMattermostアプリを開いたら……ついにスマホアプリからMattermostサーバにアクセスできなくなり。

アタマ抱える

まあ「なんでやねん!」とはなりますよね。
心の内で関西弁がこだまします

心当たりしかなく、原因は明確です。
アップデートをさぼっていたため、現行のアプリには非対応になってしまったようです。

補足情報

前回アップグレードはおよそ3年前……
確かに「はよ更新せえや」の警告はやんわり出ていました


3年越しで現行の最新バージョン(v7.10.8→v10.11.22)に寄せました。

現況の整理

当社のMattermost環境は以下のとおり。顧客に解放しているWordPressマルチサイト環境のサーバとは別に、専用のVPSを立てて運用しています。

  • サーバ:Conoha VPS(メモリ1GB、CPU2コア)
  • OS:Ubuntu 20.04 LTS
  • Mattermost:Team Edition 7.10.8

状況としては、「サーバーをアップデートしてください」のメッセージが表示され、スマホ(Android)アプリからアクセスできなくなりました。ブラウザ経由なら利用可能です。

PCでは
使えてた件

PCにもデスクトップ版アプリを入れていますが、以前ver5系からver6系にアップデートしたところ「サーバのバージョンが対応していません」とのことで非対応になってしまい、ver5系のまま引っ張っていた経緯もあります(←)

現行のAndroid版アプリの対応状況

GooglePlayで見てみると「Mattermost Server ver10.11.0以降が必要です」とあります(画像下部)ので、もはやサーバのアップグレード必至。さすがにブラウザ経由だけでの利用は勘弁されたいところ。

Mattermostアプリのサーバ対応状況

最低でもver10系までは挙げないといけなくなっています昨今のようです。

MattermostのMySQL対応はver10系まで

Mattermostの最新版はver11系ですが、ver10系から仕様が異なっている点にも注意が必要です。

なかでもデータベースの対応からMySQLが外れ、PostgreSQL一択になった点は大きいかと。

MySQLは

すでにver10系以前から暫くMySQLを用いた新規インストールには対応しておらず、もはやMySQLは移行措置のためだけの対応です

今後も使い続けるにはデータベースをMySQLからPostgreSQLに移行する必要があるので、近々そういう壁を乗り越えないといかないことは確定しています。

そのくらいMattermostを使い続けたいという意向でもありますね。

『アップグレードパス』とは

さてこの最低ラインであるver10.11.0ですが、メジャーバージョンアップごとにESR(Extended Support Release:拡張サポートリリース)があります。

現状の7.10.8からアップグレードしていくには、公式の推奨アップグレードパスに従うと、

7.10.8(現状)→8.1.3→9.5.14→9.11.18→10.5.14→10.11.22

と段階を踏む必要があるようです。つまり今回5周せなあかん

ダメ!
スッ飛ばし

この公式ドキュメント内でも「セキュリティ、安定性、新機能の利用のためにESRを経由したアップグレードを強く推奨します」と冒頭に記述されています。

思うこと

こういうパッケージものはいい意味でブラックボックスなので、不整合でトラブルになるのが一番怖いと思います。だって不安なく使えてナンボ

アップグレード作業

Ubuntuのアップグレード

まずはサーバOSのUbuntuを最近のバージョンに。
現在は20.04 LTSなので24.04 LTSへアップグレードしました。

こちら、丁寧な先達の記録です(ありがとうございます)。

そうしてOSの準備ができたら、続いてMattermost本体のアップグレードに移ります。

Mattermostのアップグレード

Mattermostのアップグレードはコマンドラインからの手動です。

Bash
cd mm[version]/
wget https://releases.mattermost.com/[version]/mattermost-team-[version]-linux-amd64.tar.gz
tar zxf mattermost-[version]-linux-amd64.tar.gz
chown -R mattermost:mattermost mattermost 
chmod -R g+w mattermost
mv mattermost/config/config.json mattermost/config/config.json.org
cp -p /opt/mattermost/config/config.json mattermost/config/
systemctl stop mattermost.service
mv /opt/mattermost/data mattermost/
mv /opt/mattermost /opt/mattermost_v[oldversion]
mv mattermost /opt/
ln -s /opt/mattermost/client /opt/mattermost/bin/client
mkdir /opt/mattermost/client/plugins
chown mattermost:mattermost /opt/mattermost/client/plugins/
systemctl start mattermost.service

からの、Mattermostのバージョン確認で

Bash
systemctl status mattermost.service

を施して完了。あとはブラウザやアプリから問題なく動くかどうかを確認します。

“5周”とは

この作業を終えると、例えばv7.10.8からv8.1.3になります。つまりこれをあと4回繰り返したということです、笑 (上へ戻る

おつかれさまでした。

次は…PostgreSQL対応!

ver10系は今年2026年の8月15日にサポート期間が切れるので、もはやPostgreSQLへの移行は待ったなしです。
やらなきゃ…

さしあたりは、Mattermostの使用環境が快適になりました。
実は、デスクトップアプリでは各ポストに対する「リンクをコピーする」が効かなかったりなど、古いバージョンを使っていたことと思われる不具合もちらほらありましたが、この機会に解消しました(まあそうでしょうね)。

デスクトップアプリのユーザーインターフェースあたりもちょこちょこと格好良くなっていますね。
MySQL対応の最後のバージョン、2026最新版の環境でしばらく使います。

Shimさん

おつかれさまでした!
これでまた、スキマ時間に仕事が捗ります☆

投稿者プロフィール

g3a188

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です