[WordPress]サイトヘルスの指摘(DBバージョンアップ編)

前提条件

サーバー:さくらレンタルサーバー
WordPressバージョン:6.6.2

放置せざるを得なかったサイトヘルスの指摘

[WordPress]サイトヘルスの指摘(2024春編)で記載した後も下記の指摘事項はそのままでした。

このうち1つ目の「古いデータベースサーバー」については、サイトを構築しているさくらレンタルサーバーのデータベースのバージョンがMySQL5.7までしかサポートされていなかったため放置せざるを得ませんでした。

※2つ目も結局放置せざるを得ませんでした。今回も2つ目は放置ですm(_ _)m

MySQL8.0がサポートされた

下記のニュースリリースにあるように、さくらのレンタルサーバーにてMySQL8.0が提供される様になりました。

【さくらのレンタルサーバ】データベース機能における「MySQL 8.0」提供予定に関するお知らせ

概要

さくらのレンタルサーバのデータベース機能において、「MySQL 8.0」を2024年9月19日(木)より提供することを決定いたしました。

https://www.sakura.ad.jp/corporate/information/announcements/2024/09/06/1968216999/

これで、データベースをMySQL5.7からMySQL8.0にバージョンアップできる様になります。

MySQL8.0へのバージョンアップ手順

自分が書くよりも丁寧な手順がさくらのレンタルサーバー様の方で公開されていますので、ここでは、そのURLを記載しておきます。

※細かな注意事項も記載されています。

データベースをアップグレードしたい

https://help.sakura.ad.jp/rs/2193/#01

MySQL8.0へのバージョンアップ時の注意事項

MySQLのバージョンアップ時の大まかな流れは下記になります

  • サーバーコントロールパネルでの操作
    • データベースのアップグレード操作
      • アップグレードを実施する日時を予約
        → 登録メールアドレスへアップグレード予約日時のお知らせが届く
      • アップグレード実施(自動)
        → 登録メールアドレスへアップグレードが完了した旨のメールが届く
    • データベースのバージョンが更新されている事を確認
      ※MySQL5.7とMySQL8.0の両方が存在している状態になる
      • バージョンアップされたMySQL8.0のホストURL等を確認
  • ファイルマネージャーでの操作
    • MySQLを利用しているウェブアプリケーション(WordPress)などの設定変更
      • 設定ファイルのDB参照先(ホストURL)等の更新

データベースの齟齬が生じないような対応

サーバーコントロールパネルでバージョンアップ(アップグレード)を実施すると、下記の様な状態になります。

アップグレード実施時点の状態

古いデータベースが新しいバージョンに変換されるのではなく、古いデータベースと同じ内容が新しいデータベースにコピーされるようなイメージです。

この時点で、ウェブアプリケーションはまだ、古いデータベースを参照しています。

ウェブアプリケーションの設定ファイルを書き換えてMySQL8.0の新しいデータベースを参照する様にする事で初めてMySQL8.0のデータベースとして動き始めます。

ウェブアプリケーションの設定ファイル変更時の状態

賢明な方なら察しがつくと思いますが、アップグレード実施完了から設定ファイル変更までにデータベース操作を行ってしまうと、データベースの内容に差異が生じてしまいます

なので、アップグレード予約時間より少し前から、設定ファイル更新・動作確認完了までの間で、データベースアクセスが発生しない様に、メンテナンスページを表示するなどして、外部からアクセスできない様にしておいた方が良いでしょう。

データベースを使っているアプリ全てを対応

WordPress以外にもMySQLをデータベースとして利用しているアプリケーションがある場合は、そちらもDBホストなどの変更が必要となります。

複数のWordPressサイトを運営している場合は、それぞれの設定ファイルの変更が必要です

※MySQL5.7も残っているので、変更しなくても動作に問題は起きないかも知れませんが、MySQL5.7にもMySQL8.0にも同じ様なDBが残っていると管理に問題が出る可能性があります。

古いデータベースの対応

MySQL8.0への移行が完了したら、古いMySQL5.7側のデータは不要になります。

さくらのレンタルサーバーでは、今後MySQL5.7に関するサポートがされなかったり、MySQL5.7のデータベースがあるとプラン変更が出来なかったりするようなので、不要なら削除しても良いのかも知れません…が…

「何に使っているのか不明なDBがある」「それを参照している設定ファイル・設定箇所が分からない」と言う状態で削除してしまうと、どこかで問題が発生して苦労するとも限りませんので、しばらく残しておくのもありかも知れません(ただ、無責任に放置してもいい事はありませんが…)

サイトヘルスの指摘内容の確認

さて、だいぶ話がそれましたが、本来の目的のWordPressのサイトヘルスの指摘を再確認してみます。

期待通り、「古いデータベースサーバー」の指摘がなくなりました!

以上!