Movable Typeがいきなり壊れた!(DBのmt_session)
February 6, 2009
ブログのテンプレートを少し触ろうと、MTにログインして作業をしようとすると、管理画面のページを移動する度に、ログイン画面に飛ばされる現象に急に襲われました。
原因究明
.htaccessをちょこちょこ触っていたので、それが不味かったか思い、.htaccessを元の設定に戻してみたりしましたが、改善されない。
↓
Firefoxがバグったかと思い、Safariでログインしてみても、ページ移動の度に、ログイン画面。
↓
Macの問題か?と思って再起動しても駄目。
↓
バージョンの問題か?っと思って、MTのバージョンを上げて(4.21→4.23)みるも変わらない。
↓
MTの問題ではない、てことはDBを疑ってcoreserverの管理画面から新たにDBを作り、mtにアクセス。インストールが始まるので、素直にしたがって新しいMTにアクセス。
↓
問題なくログイン出来る。
↓
ほぼDBが原因と特定。
で、ここで一旦冷静に
現象
ログインは出来るが、ページ変遷の度に、ログイン画面に毎回飛ばされる。
予想
- ログインは出来ているので、ログイン自体は問題ない。
- ログイン情報を持ち回れていないはず。
- ログイン情報はSessionで持ち回っているはず。
- Session_IDは、DBで管理されてはず。
私の技術不足でDBは、phpMyAdminでしか扱えないので、phpMyAdmin経由で中身を覗く。 テーブルを一通り見てみると、明らかにおかしい文字が。。。
mtsessionの部分が、構造が書かれず『in use』になっています。明らかにおかしい。
復旧作業
SQL文はイマイチ分からないので、先程、新たに作った正常に動いているMTのDBから、mt_session部分のみphpMyAdminでエクスポートしてみる。
↓
それを、もとのDBにインポートしてみる。SQLエラー
↓
恐らく壊れた部分『mt_session』がエラーの原因の模様。
↓
『mt_session』をゴミ箱マークをクリックして消す。
↓
再びDBにインポートしてみる。成功
これで、MTにログインできページ変遷しても無事動くようになりました。
今回は、壊れた箇所が、『mt_session』だったため、この方法で問題はありませんでしたが、記事部分のデータが格納されている『mt_entry』あたりが壊れると、この方法では取り返せません。
今回は、なぜDBが壊れたのか原因が全く分かりませんでした。 正直かなり戸惑いました。長い間MTを使っていますが、こんな経験は初めてでした。
転ばぬ先の杖ってやつで、定期バックアップは、大事ですね。
- HOME »
- Blog »
- MovableType »
- Movable Typeがいきなり壊れた!(DBのmt_session)

只今、コメント機能が正常に機能していません。ご意見ご要望はこちらからどうぞ。
コメントする