しかし、今日はサイトのメンテでおおわらわでした。ことの発端は昨晩。新サイトオープン前にmySQLを使う色んなCMSを試していたんですが、MTをメインで使うことにしたこともあって、使わなくなったデータベーステーブルを管理画面から削除していたのです。MT絡みのものはmt_xxxみたいな名前のテーブルなのでそれ以外を消す作業をしていたんですが、数が多い割に一つずつしか削除できないんですよ。MT関連ファイルは一番上にソートされていたので、下から一個ずつ地道に削除していたのですが、リズムに乗っていたのがまずかったのでしょう。MT関連ファイルの最後にある「mt_trackback」というテーブルまで消してしまったようなのです。PHPだのSQLだの、よくわかってないにもかかわらず、単純作業だからといってボーッとしていたのがいけませんでした。今日になって、太鉄さんのコメントでトラックバックできなかったと知り、もしやと思って見てみたらそういう状況だったというわけです。
契約しているホスティング会社はMovable Type対応ですが、インストールマニュアルではmySQLの利用についての説明はなく、Berkeley DBベースの解説になっているので、対処方法が全然わかりませんでした。そこで、まっさきにMTのプロでクリクラ時代から仲良くしていただいているCHEEBOWさんにSOSを発信。教えて君ばかりではまずいと思い、アドバイスをいただく前にやれるだけのことはやってみようと、別に契約しているサーバーにMTをmySQLベースで新規でインストールしてそこでできたデータベーステーブルの内容を書き出してこちらのデータベースに導入すればよいのではという見当を付け実行に…。そのうちにCHEEBOWさんからアドバイスをいただいたのですが、勘でやったことが正しかったようで、手順としてはあっていた様子。素人でも長年Webに慣れ親しんでいただけのことはあるというか、自分で自分を褒めたくなった瞬間でした。
でも、管理画面のトラックバックメニューに入ろうにもエラーが表示されてNG。実際のサイトは関係ないエントリーにトラックバックが表示されたりしていたりとぐちゃぐちゃな状態。で、なんとなくですが、新規に設定したデータベースとアーカイブ側のトラックバックIDの整合性が取れなくなったのが原因ではないかと思いつきました。これも素人の勘が当たっていたようで、ごにょごにょしていたら直ったんですよ、これが…。というか、直ったように見えるだけかもしれませんが…。
ほっと胸をなで下ろしたのもつかの間、通常の更新作業に入ってみたら、予想以上にソニーネタも多く、ピックアップするだけでも大変な時間がかかってしまいました。余裕のない更新作業はマジで疲れます。
で、今回の教訓。mySQLのデータベースはもう絶対に触らない。使わなくなったデータベースも絶対に消さない。MTについて関心のない方にはなんのことやらなお話ですが、これから導入しようと思っている人はくれぐれも私と同じ過ちを犯さないようにお気をつけください、という意味で書き留めておきます。
ふぅ~。
Movable TypeとBerkeley DBとMySQL
自分のとこがトラックバック受け付けてないのにトラックバックしてみるの図(ひどい)…