再構築時の500エラーを解消する
Tag:[]
昨日より爆発的(?)に広がってる話題に便乗してご紹介を。
エントリーが増えてくると再構築(エントリーの新規投稿含む)で500エラーが発生する話をよく耳にします。どうやら BerkeleyDB を使用している場合に発生するようで、その原因に db ディレクトリに配置される fileinfo.db の肥大化(10MByte以上とか)が挙げられていました。このファイルにはサイトに配置されているファイル情報等が記録されており再構築時にこのファイルが更新されますが、冗長なファイル情報が残ってしまうみたいです。
肥大化の技術的な原因はogawaさんの言葉を引用させて頂くと、すでにある fileinfo.db を remove してから(データを)追加すべき処理で、
- remove してもその分の BerkeleyDB の空き領域が開放されない
- remove しているがうまく削除できていない
ということで、この両方の相乗効果でサイズが肥大化しているようです。
以下参照および関連記事です。ありがとうございました。
参照記事
Magic White:500エラーと投稿時遅延解消法/500エラーと投稿時遅延解消法その2
我楽:新規エントリー投稿時に500エラー。(泣)
上記から参照している元記事
TITO's Web Page:Movable Type「fileinfo.db」の肥大化
リンクサイトで対処された方々(不足ご容赦ください)
V.J.Catkick@:fileinfo.db を削除する
やむやむ:「fileinfo.db」 のスリム化
体験手記レポート部:エントリー投稿時に500エラーが出るのをどうにかする方法
対処については当初「fileinfo.db を手動削除」という手段(バックアップ要保存)が出回ってましたが、 Ogawa::Memoranda さんが削除用スクリプト(下記)を速攻で作成くださいました。個人的にはこちらのスクリプトを使用されることを推奨します(2004.11.30 プラグイン化されております)。
対処用スクリプト
Ogawa::Memoranda:mt-shrinkfinfo.cgi
詳細は上記サイトを参照ください。なおこのスクリプトを実行し、成功すると下記のような画面が表示され、fileinfo.db のサイズが適正なサイズに縮小されます。 私もありがたく使わせて頂きます。ありがとうございました。 |
追記:fileinfo.db のサイズを管理画面に表示する方法を
に掲載しました。
2004.11.30 追記
プラグインが提供されまして、管理画面からのクリックで実行できるようになりました。設定方法を簡単に記しておきます。詳細は先のリンクまたはMagic White:mt-shrinkfinfo.cgiがプラグインに。を参照ください。
- mt.cfg の DataSource を相対パスから絶対パスに修正。
- ShrinkFInfo.zipをダウンロード、解凍。
- 解凍した「ShrinkFInfo」をフォルダごと plugins フォルダ内に配置(レンタルサーバの場合、パーミッションの設定がありますのでご注意ください)。
設定は以上です。管理画面にを開くとShrinkFInfo Plugin が表示されているはずですので、そこをクリックすればCGIが実行されます。
2004.12.11 追記
fileinfo.db のサイズを表示する方法を追記しました。
- カテゴリーアーカイブで全カテゴリーリスト表示の記事修正
- 個別エントリーアーカイブでの文字化けの原因
- コメント・プレビュー画面の typo 修正
- コメント欄とトラックバック欄にメッセージ追加
- 個別エントリーアーカイブにコメント・トラックバックのアンカー追加
- Movable Typeで保存したエントリーをすぐに確認する方法
- アップグレードと新規インストールの差分について
- Movable Type 3.11-ja アップグレード
- Movable Type 3.1 日本語版リリース
≫ “500”疑惑 from NOCCI.JP
実は、ここ何日か“NOCCI.JP”の裏はてんやわんやだった。 というのも、新規... [続きを読む]
≫ 再構築できない[1] from WORLD WIDE BLOG
MTのバージョンが3.121の場合、MT... [続きを読む]
≫ 再構築時の500error from blog _ notation of the wave
最近、MT3.2を(すべてを)再構築するとエラーが出るようになりました。 い... [続きを読む]
≫ 再構築時の500error.2 from blog _ notation of the wave
先日、MTで再構築時に500エラーが出るなんて、言ってましたが。 Entrie... [続きを読む]
≫ Movable TypeでBlog作り疑問編(1クエスチョン) from unknown
なんか、何にもいじってないのに[サイトを再構築]を押して[アーカイブのみ再構築:... [続きを読む]
ちょっぴり怖々試してみました。
ちゃんと、yujiroさんが書いてくれている画面が現れましたv( ̄ー ̄)v
ここ最近、もの凄く重くなっていて、
どうしたもんかと思っていたから、嬉しいです♪
>真希さん
こんにちはー。
早々の参照ありがとうございます。
これで動作が軽くなるといいですね?。
(・Ω・)ノ コンニチワー TBありがとうございます。yujiroさんの記事にのっけてもらえるなんて、光栄ですぅ。(〃_ 〃)ゞ ポリポリ すっごく再構築の時間が短縮されて気分爽快。エラーも出なくなりました。定期的にこのCGIを実行して、ファイルのダイエットをしたいと思います。
いつの間にか流行ってました(笑。
みんなこまってたんだなぁ、、。と思う今日この頃、、。
この方法あるならずっとBerkeleyDBでいいような、。とおもいずつダイナミックしたい気持ちもあったり(汗。
>さえらさん
こんばんはー。
Perlのエラーといい、MTって色々不具合ありますね。
でもブログツールはユーザの手によっていいものになっていくものと思えば、それに携わることができるのは刺激があっていいかも知れません。
>みよたんさん
こんばんはー。
この記事には目からウロコでした。
素晴らしい検索能力ですね!
まいりました。
でもMySQLはかなり早そう(笑)。
> yujiroさん
トラバありがとうございます。^^
MTのダイエットは終わったんで、自分のダイエットだな、次は。(苦笑)
>Border.
こんにちはー。
どういたしまして。
では、MTがリバウンドしませんよーに(笑)
貴重な情報をありがとうございました。
早速実行しました♪
>ゆこりんさん
こんばんはー。
記事参照ありがとうございます。
あ、プラグイン化もされてますのでこちらもよろしくお願い致します(既にお済でしたらお許しを)。
どうも。指示通りに入れてみたんですが、
An error occurred while removing duplicated MT::FileInfo objects: Bad ObjectDriver config: Your DataSource directory ('./db') does not exist.
上記の様な文章が出てきました。
これって・・・ちゃんとプラグイン化されてない?
fileinfo.db が10MByte以下だからですかね?
現状では特に問題ないのですけど(笑)
@oyumeさん
.mt.cfgの「DataSource ./db」の/dbの部分をフルパスに変更してください。
じゃないとこのプラグイン動きません。
フルパス分からなければ利用サーバーにきいてみましょう。
yujiroさん
もう壊さないと探しまくりました(笑。
>@oyumeさん
みよたんさんが代わりにコメントくださりました通りです。
うまくできましたでしょうか。
>みよたんさん
回答ありがとうございます。
どうぞお気をつけて(笑)。
>みよたんさん
レスが遅れてすいません。
先ほど御指摘どおりに試したらできました!!
これで一安心です(笑)
有難う御座いましたm(_ _)m
>yujiroさん
はい、何とか無事に(笑)
ここは親切な方が多いので本当に多いので、
とても感謝しております。
それにしても、もうVerUPなんですね・・・。
先月中頃に3.11にしたばかりなんで、
気持ちが追いつかないのが本音ですが、
でも、やってみたい気も(笑)
>@oyumeさん
こんばんはー。
焦らずマイペースでいきましょう!(笑)
このたびは貴重な情報どうもありがとうございました。
ちょうどタイムリーに昨日あたりから500エラーがでまくりで大変に困っていたので(笑)、目から鱗な想いでした。
これで、しばらくはストレス無く更新が出来そうです。
>nocciさん
こんばんは。
記事参照ありがとうございます。
無事に再構築できたようでよかったです。
ではでは!