ブログの再構築時に、しばしば「500 Internal Server Error」というエラーが起こるようになって困っていたのだが、その原因と、それを回避するためのプラグインが紹介されていたので、さっそく導入してみた。
MT-ShrinkFInfo@Ogawa::Memoranda
Movable Type 3.1でBerkeleyDBを使っている場合、再構築を繰り返すたびにfileinfo.dbが肥大化するという問題が知られています(TITO’s Web Page: Movable Type「fileinfo.db」の肥大化)。具体的には、MTは再構築のたびに古いFileInfoオブジェクトを削除して、新しいFileInfoオブジェクトを生成しますが、このときBerkeleyDBを使っている場合に限って、(1) 古いFileInfoオブジェクトの消去をし損なう場合があること、(2) 削除してもfileinfo.dbファイルの空き領域が開放されないこと、がこの肥大化の原因となっています。
サーバーをチェックしてみたところ、私の場合fileinfo.dbはすでに28MBにまで肥大化していた(滝汗
再構築するたびにこのファイルが書き換えられるわけで、サーバーに負荷がかからないわけがない。書き換えの途中で「500 Internal Server Error」となってしまうわけだ。
上記プラグインを導入して実行してみたところ、dbファイルのサイズは28MBから48KBへと激減!すごい効果!
MovableTypeのメインメニュー画面に、プラグインへのリンクと現在のdbファイルのサイズが表示されるようになるので、ワンクリックで気軽に減量化できるようになる。
さっそくブログ全体の再構築を行ってみたが、エラーも起きず、構築にかかる時間も短縮され、非常に快適になった。