Movable TypeでMySQLのトラブル
いつものようにコメントspamやTrackBack spamを削除したあと、Rebuildしたら、最新コメントの表示がされず、こんなエラーが表示されるように。
MT::App::CMS=HASH(0×8369e20) Use of uninitialized value in concatenation (.) or string at /virtual/artifact/public_html/artifact-jp.com/mtcgi/lib/MT/ObjectDriver/DBI/mysql.pm line 220.
最新のコメントの表示もされないし、エラーメッセージから考えるに、MySQLのデータで何かトラブルが起きたのだろうと予測。調べてみると、MySQLのデータは復旧できるそうなので、phpMyAdminを起動。
最近いじったテーブル(項目)はコメントデータが入っているmt_commentと、TrackBackのデータが入っているmt_tbpingなので、左のメニューからそれを選択。メニュー(「構造」「表示」などが並んでいるところの)の「操作」を選び、テーブル管理の「テーブルを復旧します」を選んで実行してみました。でもエラー表示が出て、今度はそのテーブルのファイルまで読み込めなくなる始末。
テーブルが読み込めなくなると、このメニューでの「操作」は表示されなくなるので、復旧は選べず。そうなると、構文で直接命令するしかないのかと思って「repair table mt_comment」を試してみても、これまたエラーが出るばかりで、うまく行かず。
いろいろ調べてみたら、「メーンページへ」の下にあるアカウントをクリックすると出てくるテーブルの一覧から、各種操作ができるのを発見。そこからテーブルの復旧を選んだら、直りました。
最初に選んだ「復旧」と後で使った「復旧」って別物なんでしょうか…。phpMyAdmin不思議だ…。
結局何が原因で壊れたのかは不明。ディスク容量の問題で書き込めなくなることもあるとか。
TrackBack spamやコメントspamのように連続して多大な負荷がかかると、MySQLのエラーは起きやすいようなので、Movable Typeユーザーの方は気を付けましょう。
ついでに検索していて気になったMovable Typeのデータベース関連でのトラブルをリンクしておきます。
MovableType バークレーDB破損からの復活!
hxxk.jp - mt_placement と mt_entry の齟齬による記事保存エラーの対処
bricklife.weblog.*: HTML から weblog を復旧する方法
soanblog創庵: トラックバックスパム



















コメントをどうぞ
※コメントの内容が、「文章から意味を見出せない」「元の記事と関係がない」「他人のプライバシーを侵害している」「他人を中傷している」など問題があると管理人が判断した場合、削除させていただくことがありますので、ご了承ください。
※コメント欄で初めて書き込まれる場合でも、挨拶は必要ありません。
※spam対策のため、リンクが二つ以上あるコメント、TrackBackはいったん保留されます。承認されるまで表示されませんのでご了承ください。
※その他、コメントを書き込む際はこちらの注意をご覧ください。