« MT4の復元で失敗するのはプラグインが原因 | Technical | VistaのエクスプローラーでDVDに書き込んではいけない »

MT4のブログIDを初期化する

| コメント(0) | トラックバック(0)

MT4って、バックアップ元のブログIDに関係なく、復元先に存在しているブログIDの続きからIDが振られていきます。

この仕様自体は仕方がないと思うのですが、管理画面からすべてのブログを削除しても、ブログIDはリセットされません。

たとえば、現在3つのブログがある(blog_id=1, 2, 3 となってる)とします。
ここで、この3つのブログのバックアップを取り、いったんすべてのブログを削除した後でバックアップを復元すると、新しいブログのIDは1, 2, 3 ではなくて、4, 5, 6 になるのです。

これって、元がマルチブログ構成で、互いにリンクしていたり、Blog_idで条件判断したりしていると、復元時にブログIDが合わないのでかなり大変なことになります。
私のサイトだと、複雑すぎて元に戻せないかもしれません。

どうにか、全ブログを削除した時くらいブログIDを初期化できないかと思ったところ、下記のような記事を見つけました。

[Movable Type] Movable Type に関する設定のメモなど blog_id を初期化

この記事によれば、blog_id を管理しているデータベースのテーブル「mt_blog」を初期化する必要があるようです。

初期化のためには、データベースを操作する必要があります。
レンタルサーバーの場合は、コマンドラインやphpMyAdminでデータベースが操作できないと、この方法は使えません。

やり方は、

・コマンドラインであれば、mysql> truncate table mt_blog;

・phpMyAdminであれば、MovableTypeのデータベースを表示して、mt_blog にチェックし、下にあるドロップダウンメニューから「空にする」を選びます。

その後、バックアップから復元を行うと、ブログIDは1から振られます。

注意点は、これを行うとデータベースの内容の整合が取れなくなるので、ブログをすべて削除してから行う必要があるということ。
管理画面からブログID初期化する方法はないのかなぁ?

トラックバック(0)

トラックバックURL: http://www.cherrypieweb.com/mt5/mt-tb.cgi/178

コメントする

月別アーカイブ

twitter