Home > howto > WordPress の SQLite 対応

WordPress の SQLite 対応

現在、データベースソフトには PostgreSQL を使っているのですが、MovableType と違って、WordPress は MySQL しか対応していません。

わざわざ、WordPress のためだけに MySQL をインストールしてデーモンプロセスを増やすのも嫌だったので、他のデータベースに対応するプラグインなどは無いものかと、探していたらありました。

まず、WordPress › PDO (SQLite) For Wordpress « WordPress Plugins からプラグインをダウンロードします。

以下、プラグインに同梱の readme.txt を意訳していきます。原文はプラグインのオフィシャルページに同じ内容が公開されていますので、そちらで確認してください。

—————————————-

== インストールの仕方 ==

このプラグインは簡単な Wordpress プラグインではないので注意してください。ただ plugins ディレクトリに放り込んで管理パネルから有効にするだけではありません。プラグインを有効にする前にデータベースコネクションを確立する必要があるからです。

このプラグインをインストールする手順は以下です::

Step 1:

wp-content ディレクトリにファイルを解凍してください。解凍後は以下のようになっているでしょう。

wp-content
->plugins
->themes
->pdo
db.php
index.php[maybe]

ポイントは、db.php と pdo ディレクトリを wp-content ディレクトリの直下に配置することです。

Step 2:

wp-config.php を以下のように編集してください:

下記のコードは define(’COLLATE’,”); と書かれた行の次の行に挿入してください。

define('DB_TYPE', 'sqlite');   //mysql or sqlite

メモ: これは、mysql と sqlite だけをサポートするものです。すぐに他のデータベースもサポートされると良いですね。

シークレットキーも忘れずに編集しましょう。

以上の 2 ステップだけです。

WordPress のセットアップ画面にアクセスすれば、データベースが自動で作成されます。その後は通常と同様のインストールが進行されます。

—————————————-

と、割と簡単です。readme には書いていませんが、database ディレクトリを wp-content 配下に作って PHP から書き込めるようにパーミッション変更しておきましょう。

が、しかし

インストールはすんなり行きませんでした。

設定を終えてブラウザからアクセスしてみると、画面は真っ白。エラーログも出力されず、どうやら途中でスクリプトが死んでいる模様。

犯人はここでした。
wp-includes/wp-db.php on line 318
$this->dbh = @mysql_connect($dbhost, $dbuser, $dbpassword, true);

@ が付けられているのでエラー出力がなかったのです。PHP 自体を –with-mysql でコンパイルしていたことに起因するエラーでした。この行をコメントアウトしたらきちんと動きました。

と、思ったら
このプラグインは、$table_prefix を読んでくれていないらしく、wp-config.php でテーブルのプレフィクスを wp_ 以外にしていると、「そんなテーブル知らないよ」と、言われてしまうので、諦めて固定にしましょう。

ちなみに、データベース名も固定で MyBlog.sqlite というファイルが database ディレクトリに出来上がってました。

wp-config.php
$table_prefix = ‘wp_’;

howto , ,

  1. コメントはまだありません。
  1. 3 月 23rd, 2009 22:45 | #1

    [...] こちらを参考にさせてもらいつつ作業するも、なぜか画面が真っ白。 結局、PDO For WordPressのソースをさらに追ってみる。 [...]

    from CalmTech -Mind Dump-» ブログアーカイブ » PDO For WordPressインストールでハマる
  2. 4 月 26th, 2009 23:09 | #2

    [...] ▼参考 Craftworks Tech Blog » WordPress の SQLite 対応 [...]

    from Hello WordPless!! « もくつく:プログラム勉強メモ部屋
  3. 6 月 23rd, 2009 02:47 | #3

    ブログ引っ越し記(WordPress 2.8導入&カスタマイズ)

    移転のきっかけ
    今まで3年半くらいFC2ブログを使っていたのですが、最近Akamai(アカマイ)使い始めたので広告入れることになったらしいのです。お知らせメールは見逃したらしく…

    from 藍色の研究: Log
  4. 7 月 5th, 2009 03:55 | #4
  5. 7 月 12th, 2009 23:15 | #5

    [...] 次はMySQLが使えないためWordPressをSQliteで動くように。 Craftworks Tech Blog » WordPress の SQLite 対応 この辺を参考に。 [...]

    from xreaからさくらライトへ引越し - Jimmy dares neigh.
  6. 8 月 16th, 2009 02:54 | #6

    [...] PDO (SQLite) For WordPressをWordPressに組み込みます。 やり方はCraftworks Tech Blogさんの記事を参照するとよいです。 はまり所も書いてあります。 [...]

    from ブログ引っ越し記:WordPress 2.8 + PDO (SQlite) For WordPress 導入 « 藍色Web研究室
  7. 9 月 1st, 2009 07:34 | #7
  8. 10 月 29th, 2009 11:43 | #8

    [...] 参考: Craftworks Tech Blog » WordPress の SQLite 対応 コメント (0) [...]

    from wordpressをMySQLではなく、sqliteを使うように設定してみた « sugitaroの日記
  9. 1 月 2nd, 2010 17:12 | #9
  10. 5 月 15th, 2010 13:47 | #10

    [...] WordpressとSQLiteで構築してみたのですが、レンタルサーバーにインストールしようと思ったら、いきなり画面が真っ白。 インストールができない状態に!!ローカル環境ではうまくいっていたために・・・、また苦しむ羽目になりました。 でも、最終的にはなんとかうまくいった・・・ 理由は、データベースフォルダを自動で作ることができないという点などなど・・・ ココのサイトが参考になりました。あと、ココのサイトも参考にさせてもらいました。 [...]

    from Wordpress+SQliteのレンタルサーバーでの問題 | Web対策に悪戦苦闘の毎日