« test | メイン | PileusUmbrellaがOxigenoに掲載されました »

2006年11月19日

MT3.3でBerkeleyDBからSQLiteに移行する [MovableType][SFC][Technology]

(SFC向けの内容です)

数日前からMovable Typeが再構築どころか、エントリー一覧からエントリーを選んだりするだけで500 Internal Server Errorになってblogが書けなくなってたのを直す事ができたのでメモしておく。

CNSの情報を見ても、suExecもquotaも全部大丈夫なのに、というかここ数日CNSのサーバーも、このblogも設定をいじってないのに突然500 Internal Server Errorになるので不思議だった。


■解決方法(MT3.3の場合)
BerkeleyDBからSQLiteにデータベースを移行したら、直った。
SFCのwebサーバーにはSQLiteとDBI::sqliteがインストールされているので、下記を良く読めば3分ぐらいで移行できるはず。

(前提)俺の場合、MTは shokai/public_html/cgi-bin/mt/ にインストールしてある。

1.MT Database Converter.ja JP - Ogawa Codeからmt-db-convert.zipをダウンロードして、mt-db-convert33.cgiをmt.cgiのあるディレクトリにアップロードしてパーミッションを755にする。

2.webブラウザからmt-db-convert33.cgiにアクセスする。左側はmt-config.cgiの設定が読み込まれて、BerkeleyDBが指定されているので特にいじる必要は無い。
右側は、SQLiteを選択する。
shokai/public_html/cgi-bin/mt/sqlite/ というディレクトリを作る。

3.左側のBerkeleyDBの設定を見て、

/.automount/fs0001a/shokai/public_html/cgi-bin/mt/db
になっているので、右のSQLiteの書き出し先は
/.automount/fs0001a/shokai/public_html/cgi-bin/mt/sqlite/mt.db
にする。
SFCの場合、この/.automount/にしないとうまくいかない。pwdしても/a/fs0001a/とか出るが、/.automount/fs0001a/にする。(なおfs0001aの部分は入学年度や学籍番号などで異なるらしい)

4.設定したら、ページ一番下のConvertボタンを押して、データベースをコンバートする。

■設定の反映
5.mt-config.cgiを編集する。

##### SQLITE #####
ObjectDriver DBI::sqlite
Database /.automount/fs0001a/shokai/public_html/cgi-bin/mt/sqlite/mt.db

##### BERKELEYDB #####
#DataSource ./db

こんな感じにした。書き出したSQLiteのDBを指定してやって、古いBerkeleyDBは#でコメントアウトしてやった。

以上。

mt.cgiに入ろうとすると、DBが無くなったのでcookieが消えてパスワード入力を求められるはず。

投稿者 sho : 2006年11月19日 03:25

トラックバック

このエントリーのトラックバックURL:
http://web.sfc.keio.ac.jp/~shokai/cgi-bin/mt/mt-tb.cgi/1198

コメント

コメントしてください




保存しますか?