スポンサーリンク

WordPressでSqliteが使えない理由と対応策

この記事は約6分で読めます。
査定君
査定君

レンタルサーバーではMySQLの制限がありワードプレスの利用を諦めている方はいませんか?それを救うのがsqliteです。その方法を解説します。

スポンサーリンク

MySQLが使えないサーバーでワードプレスを使う

MySQLが使えないサーバーですが、SQLITEが使えるサーバーや契約の方も多いでしょう。
(さくらのライトプランなど)
また。MySQLの制限個数を使い切ってしまったケースでもSQLITEが最適です。
wordpressの自前インストールができる方なら、利用できるレベルです。
※wordpressではsqliteは非推奨です。バージョンアップ等で動かなくなる、プラグインが動かない場合があるなどの自力解決を試行する必要はあるでしょう。自己責任の上、ご利用ください。

SQ-liteならワードプレスで使える

そんな方へSQLITEのDBだけでワードプレスを使う方法を解説します。

ワードプレスはサポート対象外

ワードプレス自体はSQ-Liteの使用は認めていませんのでプラグインを経由して、疑似的にSQ-Liteを使用するイメージです。

さて、ワードプレス未経験者の方にとっては、ネットに転がっていたSQ-Lite手順だけでは、たぶんログインエラーで止まってしまうような粗削りな情報が多いようです。そこで、以下に整理してみました。と言ってもハードルは高いかもしれません。

インストールの方法

  1. WordPress日本語 のファイルをダウンロードして、解凍。
  2. 「SQLite Integration」 をダウンロードして、解凍。
  3. を、wp-content\plugins\sqlite-integrationへコピー。
  4. sqlite-integration\db.php を wp-content\ へコピー。
  5. トップにあるwpconfig-sample.phpを開く
  6. 認証用ユニークキーの項目へ、https://api.wordpress.org/secret-key/1.1/salt/
    にアクセスして、発行された内容をコピペして保存。
  7. PCの内容をサーバーへ丸ごと転送する。
  8. 自サイトurl/wp-config.php をブラウザから指定して、ログインする。

という流れでログイン成功までたどり着けました。

SQ-Liteのデメリット

プラグインが動かない

動かないプラグインや過去に動いていたが、動かなくなるプラグインもあります。

MySql用のDB処理、関連記事や人気記事などの集計操作が出来ない場合があります。ただし、Top10、Relatedpostなど、Sq-lite上でも動く、代替プラグインが必ずありますので、一つのプラグインが動かない場合、他で同一機能のプラグインを一通り試してみましょう。

過去に動いていたケースでは、不具合命令の修正方法を解説しているサイトもあります。

処理負荷が高く、表示が遅いのか?

google検索では、表示スピード重視の傾向となっていますので、下記のサイトで表示時の遅さを確認してみましょう。

google speed insights

サーバー側の処理が遅いというよりも、広告量が画像が重かったりというケースが多いです。少なくともコンテンツの構成により、Sq-liteでも十分合格可能な数値を確保できます。
しかし、高負荷時のアクセス数となった場合は、閲覧スピードが遅延する可能性もあります。
これも、キャッシュプラグインなどにより、一定回避可能です。
よって、Sq-liteも高速化を考慮したサイト構成であれば、一般論として語られているほどの遅さは感じないという結論となります。

従来の「SQLite Integration」がサポート切れ

SQLite Integrationの公式サイトからのダウンロードが出来なくなっています。

大手サーバー自体は、SQLiteの稼働は可能ですので、ワードプレス最新版での稼働(2021/3)は可能です。

SQLite Integration のダウンロード

公式ダウンロードページはクローズしており、以下のGithubからまだダウンロードができます。

GitHub - jumpstarter-io/wp-sqlite-integration: Jumpstarter fork of https://wordpress.org/plugins/sqlite-integration/developers/.
Jumpstarter fork of - GitHub - jumpstarter-io/wp-sqlite-integration: Jumpstarter fork of

今後の停止不可に備えて

ワードプレスのエクスポート・インポート機能を用いて、MySQLへの移動も可能です。便利なプラグインも多数ありますので、DBベースの移行よりもツールに頼った方が良いです。

  • 今後、仮に動かなくなった場合
  • ワードプレスのバージョンを元に戻し、移転サイト構築まで稼働
  • データをエクスポートする

SQ-Liteが使用可能なCMSは多い

ワードプレスに比べて、利用者数は激減するもののCMSとしてSQ-Liteをサポートしているものが、いくつかあるようです。これらを正式に利用するのも手ではないでしょうか?

wp-sqlite-db-master:刷新版(推奨)

wp-sqlite-dbのダウンロード
https://github.com/aaemnnosttv/wp-sqlite-db

  1. 上記サイトより、wp-sqlite-db-master.zipをダウンロード
  2. pluginsフォルダ内へ「wp-sqlite-db-master」フォルダを作成し、解凍展開、サーバーへ転送
  3. srcフォルダにある「db.php」をコピー。
  4. 上位の「/wp-content」フォルダにdb.php へ保存し、 サーバーへ転送

現在、利用中。wordpress6.3自動更新もエラーなし。(2023)

wp-sqlite-integration-master :旧バージョンの後継

「wp-sqlite-integration-master」は、ベースの改造版です。
試行したものの、エラー多発で私の環境では使用を中止しました。(PHP7.4/2023)

SQLiteでWordPressを使う『SQLite Integration改造版』

上記にて、1.81.のPHP 7.x用ファイルが提供されています。
PHPのバージョンが一致する方は、対応することを推奨します。以下が手順になります。

インストールの方法

  1. 上記サイトにて、Downloadボタンをクリック
  2. グリーンの「Code」ボタンから、「ZIP」をDownload
  3. 解答してそのまま、「wp-sqlite-integration-master」のフォルダをpluginフォルダへコピー
  4. 上記の解答ファイル内から「db.php」 を wp-content\ へコピー。
  5. トップにあるwp-config-sample.phpを開く
  6. 認証用ユニークキーの項目へ、https://api.wordpress.org/secret-key/1.1/salt/
    にアクセスして、発行された内容をコピペし、「wp-config.php」の名前で保存。
  7. PCの内容をサーバーへ丸ごと転送する。
  8. 自サイトurl/wp-config.php をブラウザから指定して、ログインする。
  9. ワードプレス上のプラグインメニューで、旧sqliteを無効化
  10. 今回入れた新sqliteを有効化にて、稼働開始!

データベースの更新が必要です。エラーの対処法

WordPressのバージョンアップ後、「データベースの更新が必要です」というエラーが出ると焦りますね。
データのバックアップを取ろうが、システム更新前の状態へ即時復旧できないので、対策前進や全戻しという非常に過酷なリカバリー方法しかないのは、どうにかして欲しいものです。

以下は、sqliteのDB上のバージョン番号とシステムが保持する新バージョン番号が不一致になった場合の復旧方法です。(実績あり)

WordPressを6.xに更新したら「データベースの更新が必要です」と出て、動かなくなってしまった

コメント

  1. […] WordPressでSqliteが使えない理由と対応策 ー 辛口くるま評価の査定君 […]