ムーバブルタイプ(MovableType)情報系ソフトやWEBサービスなど

MT3.2のデータベースをバークレイ(BarkeleyDB)からSQLiteに変更、再構築エラーが無くなり快適になったMT3.2

この記事は約3分で読めます。

MtdbhenkouMT3.2のデータベースをバークレイ(BarkeleyDB)からSQLiteに変更した。再構築エラーが無くなり快適になった。MT3.2とバークレイ(BarkeleyDB)の組み合わせにはバグがあるなどトラブルが多く、これまでよく再構築エラーに泣かされていた。
なお、変更したのはココログではなく診断士ブログドモドモコーポレーションのホームページなどのほうだ。
変更の手順は以下の(続きを読む)のとおり。

さて、昨日は12位。今日は何位かな?⇒

BarkeleyDBからSQLiteへの変更手順は以下のとおり。

前提はMovable Type3.2がインストールされており
データベースはBarkeleyDBを使っているものとする。

ここで
http://www.**MT3.2がインストールされているURL**/mt-config.cgi
のmt-config.cgiを修正する。

まずは現状の「mt-config.cgi」を「mt-configold.cgi」などと
バックアップをとってから作業すること。

念のため
http://www.**MT3.2がインストールされているURL**/db/
の中身のデータベースもダウンロードしてバックアップしておくのがよい。

ここから作業開始。

「mt-config.cgi」を開き、63行目、64行目のコメントを下記のように外す。
(先頭に#がついている行はコメントとして扱われる)

# ObjectDriver DBI::sqlite
# Database /path/to/sqlite/database/file

ObjectDriver DBI::sqlite
Database /path/to/sqlite/database/file

その後、64行目を以下のように書き換える。
Database /path/to/sqlite/database/file

Database ./db/mtdb

つまり
# ObjectDriver DBI::sqlite
# Database /path/to/sqlite/database/file

ObjectDriver DBI::sqlite
Database ./db/mtdb

と変更することとなる

ここで保存した「mt-config.cgi」をアップロードする。
そして「mt-db2sql.cgi」を実行。
実行アドレスは
 http://www.**MT3.2がインストールされているURL**/mt-db2sql.cgi
となる。

ファイルの変換が始まり、
「Done copying data from Berkeley DB to SQL database! All went well.」
というメッセージが表示されればOK。

最後に、
これでBarkeleyDBはもう使わないので、
「mt-config.cgi」を再訂正する。

「mt-config.cgi」70行目の「DataSource」で始まる行の
一番最初に#を付けてコメントアウトしておく。

DataSource **中略**

# DataSource **中略**

訂正したら「mt-config.cgi」を保存し、もう一度アップロード。
これでデータベースの移行は終了。