MovableTypeのバックアップと復元


あるサイトをMovableTypeで構築。

そのサイトのテスト用のミラーサイトを用意するために、データの同期をしようと色々試してみた。

まずは、公式サイトに載っている方法で試す。
ブログの完全バックアップと、データベースのバックアップ
バックアップしたブログの復元

まず失敗。
バックアップ時に出来上がるXMLを復元で読み込ませるのだが、パースエラー。
XMLで一部文字化けがあるみたい。
文字化け部分を修正すると、
バックアップは成功し、テストサイトで復元成功。

各種画像ファイル、カスタムフィールド、テンプレートなどデータ一式ちゃんと復元されていた。
再構築などしサイトも復元させる。
そして、ページの確認。

ん、なんかおかしい。
サイドナビの画像がおかしい・・・
CSSスプライトで画像は指定しています。

ちなみに、CSSスプライトというのは、通常複数の画像でナビゲーションなど生成するが、
その複数画像を1枚の画像をずらして、
表示する部分と非表示部分をCSSで調整して表示する技術です。
この技術を使うと、サーバーへのリクエスト回数を減らすことが出来、
トラフィックが気になるサイトなどではパフォーマンス改善にとても有効です。

で、話は戻る。
ナビ画像がおかしい。
CSSのclassを確認すると、「C22」「C23」などとなっている。
テンプレートの設定で、class名にC+カテゴリIDを指定する仕組み。

■22や23のIDのカテゴリなんか存在しない。

■つまりCSSで定義していない

■CSSスプライトが機能しない

■ナビ画像が正しく表示されない

このような状態となったのが原因でした。

↓こんな記事も発見
バックアップと復元に気をつけよう

標準のバックアップと復元機能を使うと、MTでエントリーしたデータのIDは引き継がれないようだ。。
これじゃミラーとはならない。。。

ということで、標準機能での復元は断念。

結局、次の方法でやることになった。

■MySQLのダンプを取る

■ダンプ内のサーバー依存のパスを書き換え

■コピー先のDBにダンプファイルをリストア

これしか完全なミラーでデータを同期する方法はないようだ。
ダンプとかサーバー依存パスがあるので敬遠して、
MT標準機能でやろうとしたのに、
結局ダンプになってしまった。。

何事も試してみないとわからんな。。

admin の紹介

あああ
カテゴリー: 仕事   タグ: , , ,   この投稿のパーマリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>