« 「マングース」来ました。 | メイン | サマー/タイム/トラベラー »

DB移行

なんだかんだと言いながら、細々と続いているこのblog。
そろそろエントリも増えてきて、再構築にも時間がかかるようになってきたので、デフォルトのバークレーDBからMySQLに移行することに決心した。

で、何のかんのと悪戦苦闘しながら(正確には識者と有能な後輩の力によって)MySQLのDBを用意して、いざ移行しようとしたところ、これがまた上手くいかない(笑)。
というか、移行用のプログラム「mt-db2sql.cgi」は正常に動作しているように見えるのだが、動かしたら最後、もうこのblogを管理しているプログラム「MOVABLE TYPE」にログイン出来なくなってしまうのだ。
実に冴えない(笑)。

この移行に関しては、書籍やWEBページから収集した情報を元に、次のステップを経て行っていた。

0.blogのディレクトリをバックアップ(超重要!!!)
1.MySQLのデータベースを用意
2.blogディレクトリにある「mt-config.cgi」の中身を修正

具体的には、下記のmysqlに対応する部分のコメントアウトをはずし、1.で作成したDBの情報を適宜書き込む
# ObjectDriver DBI::mysql
# Database
# DBUser
# DBPassword
# DBHost localhost

次に、バークレイDB用の以下の設定をコメントアウト
# DataSource /path/to/database/directory

3.修正した「mt-config.cgi」をセーブし、WEBブラウザから「mt-db2sql.cgi」を実行

これを行うとDBが移行されるはずなのだが、画面には1瞬にして「移行成功しました!」っていうcgiのメッセージが出る。早すぎ。絶対、嘘。で、案の定、ぜんぜん出来てない。
とりあえず失敗するとログインできない状態になって、自分のblogなのに何も出来なくなるので、バックアップを復元。それを3回くらい繰り返す。

MySQLのデータベースを見てもぜんぜん中身が入っていないので、明らかに「mt-db2sql.cgi」が上手く機能していないように思う。で、忙しい中blog神である後輩B氏を捕まえ、色々と教えを請うたものの、cgiが冴えないことが浮き彫りになってくる。「MOVABLE TYPE」のバージョンも最新のものにしたりしたのだが、やはり結果は同じ。むむー。

その後、色々とcgiとかを見ていたら、ふと閃く。

db2sql.cgiはmt-config.cgiを見て動作している以上、バークレーDBの方をコメントアウトして動かしたら、元になるDBが分からないのでは...

半信半疑で、DBの設定をMySQL、バークレーDBの両方のコメントアウトをはずした状態でdb2sql.cgiを動かしてみる...あ、凄い時間掛かってる...あ、出来た!

というわけで、2時間以上の格闘の結果、無事にこのblogのDBはMySQLに移行完了。手伝ってくれたR氏、B氏には感謝感激である。多謝、多謝。

しかし、きっとこのblogをご覧になっている人達には何の影響も無いに違いない(笑)。
これを機会に、デザインとかを変えてみたりもしないのである。

コメント (3)

koshi:

あ、隊長!
これ僕もはまりましたです。

backupは取らなくても、DBIの設定を全部コメントアウトしてBerkely DBだけアンコメントされた元の設定に戻すと一応blogが使える様になります。。。ちょとトリッキーですよね。。。

bm:

あ、そう言うことでしたか。
すいません、設定ファイル送って頂いてちゃんと見るべきでした・・・

saikawa:

ああ、koshiもはまったのか...WEBの情報を鵜呑みにしてはいけないね(笑)。


ちなみに、bm君のご指南がなかったら、バークレーDBに逆戻りするところだったよ。ご助力感謝します!

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2006年06月22日 20:59に投稿されたエントリーのページです。

ひとつ前の投稿は「「マングース」来ました。」です。

次の投稿は「サマー/タイム/トラベラー」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.34