WordPressを6.1.1に更新したら、「データベースの更新が必要です」と出て、動かなくなってしまった(当然!?バックアップとっておらず、後悔先に立たず)
WordPressをVersion6.1.1?に更新したら、以下ような画面になってしまい、先に進めない。
原因は、データベースにMySQLを使っておらず、SQLite3を利用していることが原因かもしれない、、、と思っていますが、とりあえず、ググってみます。
開発環境
さくらのレンタルサーバ ライト(1カ月あたり約140円)
WordPress
SQLite3
Windows 10 Pro
WinSCP
「データベースの更新が必要です」でググってみた結果のリンク
このサイトが参考になりそう!
しかし、
ファイルで管理されているデータベースバージョン値が記載されているという(/wp-includes/version.php のファイルが見つからず。
→ 3時間後に、名前でソートしたら、ちゃんとversion.php が見つかった。何順に並んでいたのかな???
wp-includes/version.php を開いてみると、最初の方は以下のようになっており、
- wp_version は 6.1.1
- wp_db_version も5桁の数字が記載
となっていました。Version6以上には上げない方がよいのかもしれません。
さらには、sqliteのファイルをダウンロードして、以下のソフトで中身を見てみるが
DB Browser for SQLite
https://blog.amuse-club.jp/ict/1838/
(wp_postmetaテーブルにmeta_key「db_version」として保存されています)
という、wp_postmetaテーブルにmeta_keyを探しても、db_versionが見つからず、絶望。
5時間後に、wp_postmetaテーブル に無いのであれば、他のテーブルには無いのかなと思い、以下のテーブルからdb_version が書いてありそうなテーブルを探してみた。
上記のテーブル名の中だと、wp_postmeta テーブルよりは、wp_optionsテーブルにありそうと思い、wp_optionsテーブルを見てみると、db_version があった、、、たしかに、この5桁の数字は、上記で見た wp-includes/version.php の db_versionの5桁の数字と異なっていた。
WordPress 6.1.1
とりあえず、
- ファイルで管理されているデータベースのバージョンが記載されている場所
- データベースに入っているデータベースのバージョン値が記載されている場所
を調べないといけなさそう。
ということで、調べた結果が上記。
db_versionが異なっているのであるが、一番簡単なのは、sqlite3データベースの、wp_optionsテーブルのoption_name が db_version の値を、
wp-includes/version.php の db_versionの5桁の数字
に書き換えるのが簡単。しかし、それで解決するだろうか???(データベース構造が変わっていて、何らかのエラーが出ないだろうか?)
WinSCPで、ht.sqlite を、wp-content/database/ ディレクトリにアップロードして、旧.ht.sqliteの名前を変更(orバックアップととって削除)後に、先ほどアップロードしたファイルを、 .ht.sqlite に名前変更。
すると、うまくいった。。。いつか大問題にならないだろうか、、、
と思って、翌日、新規投稿しようとしたら、画面が真っ白に、、、
がっくしである。まあ、ありえる話ですね。
WordPress6.1.1に更新するときはデータベース構造が変わってしまい、しかも、(MySQLではなく)sqlite3ではデータベースが更新できない
らしいということが分かりました。これは私だけの環境かもしれません。
sqlite3のdb_version の番号をDB Browser for SQLiteで修正しても、新規投稿ができなくなることがあります。
本当はWordPressの手動ダウングレードをするべき(まだやっていない)
やるとしたら、以下のリンク先に従ってやるのかも、、、
https://sologaku.com/wordpress/manually-downgrade-wordpress/
ディスカッション
コメント一覧
まだ、コメントがありません