xreaでMediaWikiとSQLiteでWikiを構築。記事をいくつか追加して、途中でカテゴリをつけてみると、カテゴリページに何も表示されない。
おかしいと思い、最初に疑ったのは、データベースの破損。しかし、特に問題はなさそう。次に疑ったのはSQLiteのバグ。ソースを眺めても、バグ情報を眺めても、特におかしいところは見つからない。
何気なく、検索機能を使ってみると、検索もされない。
そんなとき、ネット検索を続けるうちに、本家のSQLiteに関する記事を発見。英語の文章を読んでみると、SQLiteのテキスト検索機能が3.3.8移行に機能追加され、それを利用していると書いてある。
ウェブサーバーのxreaのバージョン情報を見ると、SQLiteは3.3.7...。つまり検索機能はなかったのでした。ソースを見直してみると、関数を呼び出したときに検索機能のないSQLiteは、空を返す記述が読み取れました。レンタルサーバーなので、バージョンアップするわけにもいかないので、SQLiteを断念することにしました。
さて、入力済みのデータをどのようにMySQLに転送するかが問題。SQLite Managerで書き出して、PhpMyAdminで読み込む方法が思いついたのですが、SQLの文法は似ているようで結構違う。これは断念。
しかし、MediaWikiにエクスポートとインポートの機能があることを知り、SQLiteで動かしたMediaWikiでエクスポートし、MySQLでインストールし直したMediaWikiでインポート。無事に解決することができました。
コメント