SQLiteで稼働しているWordPress(バージョン 6.4.3)をいつも通り自動更新でバージョンアップ(バージョン 6.5)したところ、
エラー: WordPress 6.5 には MySQL 5.5.5 以上が必要です
といったメッセージが表示され、データベースの更新ができませんでした。そのため、管理画面へのログインすらできなくなりました(サイトの表示は可能)
どうやら利用しているドロップインのSQLiteプラグインでは、MySQL 5.5.5と同等のレベルに達していないとみなされ、古いものとして扱われてしまうようでした。
とりあえず応急処置を
利用しているSQLiteドロップインが対応するまでは、そのままではWordPress 6.5 に対応することはできなかったので、とりあえず応急処置をしてみることにしました。その方法は、
バージョンチェックをごまかす
前述の通りWordPress 6.5は「MySQL 5.5.5 以上が必要」なわけですが、これをごまかしてしまえば、一旦は応急処置になりそうでした。
wp-includes 内にある「version.php」を探し、そこにある「5.5.5」という記述を以下の通り書き換えます。
$required_mysql_version = '5.0';
WordPress 6.4までは上記のように記述されていたので、そこだけ元に戻したかたちです。これで問題無くログインすることができるとともに、これまで通りSQLiteドロップインでWordPress を稼働できました。特にデータベースのエラー等も起きず、問題はありませんでした。
実に13年ぶりのDB最低環境更新
SQLiteドロップインを利用したWordPressを1年以上は使っており、その間バージョンアップは何度もしてきましたが特に問題ありませんでした。なぜ今回急に使えなくなったのでしょう?気になり調べてみました。
WP Ver | Date | 必要MySQL | Date |
---|---|---|---|
2 | 2005/12 | 3.23.23 | 2001/01 |
2.1 | 2007/01 | 4.0 | 2003/03 |
3.2 | 2011/07 | 5.0.15 | 2005/10 |
6.5 | 2024/04 | 5.5.5 | 2010/07 |
これまでのWordPressのバージョン履歴を確認したところ、WordPress 3.2がリリースされた2011年にMySQL 5.0.15が必要動作環境となり、以来WordPress 6.4.3に至るまで約13年もの間、最低必要環境のMySQLはずっと変わらなかったようです。
今回13年ぶりに必要動作環境が変更された背景には、さすがに古すぎると考えられたのでしょう。MySQL 5.0 / 5.1系の公式サポートは既に終了していますが、ベンダー各社は個別にメンテナンスをしてきたようです。しかしながら、Amazon AWS RDSが今年の2月にVersion 5系の標準サポートを終了しており、WordPressとしてもそうした状況に合わせる必要があったのだろうと思います。
今回最低限必要なMySQLのバージョンとして、2010年にリリースされた5.5.5になりましたが、これも既にリリースから約14年が経過しているものですので、またそう遠くない未来に引き上げらえる可能性もありそうです。そうした際も恐らく今回の手法で「応急処置」が必要になるかとは思われます。
参考になれば幸いです。