MySQL を使った Movable Type を簡単にお引っ越しさせる方法

 今回のサーバ新規構築において手探りで得た、MySQL のデータのみを使った具体的な Weblog 引っ越し方法について。

専門的な話になりますが

 通常、Mobavle Type で構築した Weblog を他のサーバにそのまま引っ越しさせたいときは、Mobavle Type メニュー上のユーティリティにある「読み出し / 書き出し」が簡単で分かりやすいのですが、この方法だと引っ越せるのは記事本文のみで、CSS などのデザインを含めた Mobavle Type 本体の設定は別途行わなければなりません。記事 ID も強制的に変えられてしまいますし、その他の調整もかなり面倒くさいと思います。

 今回のサーバに使っているハードディスクの交換時に Weblog の丸ごと引っ越しも行ったのですが、MySQL のバックアップ機能を利用した具体的な引っ越し方法が検索をかけても分かりやすいのが見あたらなかったので、今後のための備忘録も兼ねてその手順を記しておきたいと思います。一度やり方を間違って Movable Type をクラッシュさせてしまったので(笑)。

手順

 まず、MySQL に格納されている Weblog のデータベースを抽出します。いろいろな方法があるようですが、CUI ではこんな感じだと思います。

mysqldump データベース名 -uroot -pルートのパスワード -Q --opt -rバックアップ先ファイル名

 このバックアップの中には記事データも含めて執筆者の情報やその他各種設定など全てが含まれています。メガバイト単位の大きさになるので、引っ越す際には CD-ROM にでも焼いておく必要があると思います。そのほかに必要なものを含めて以下に一覧を示します。

  1. mt.cfg … MT 本体の設定ファイル
  2. mt-db-pass.cgi … MySQL にアクセスするためのパスワードを格納したファイル。
  3. CSS ファイルとそれに必要な画像ファイルたち …
  4. そして今回取った MySQL のバックアップデータ

 次にこのデータを

mysql -uroot -pルートのパスワード データベース名 < バックアップ・ファイル名

 などとしてとして引っ越し先の MySQL データベースに戻してやります(リストア)。この後、Movable Type の新規インストール用ファイルを新しいサーバ上で展開し、mt.cfg と mt-db-pass.cgi を Permission を維持したまま上書きしてやります。ここで注意しておかなければならないことは、動作チェック用の mt-check.cgi は実行させて構わないですし、むしろ必要だと思いますが、その後のセットアップ完了を行う mt-load.cgi は絶対に実行してはならないということです。私はこれを行ったことで Movable Type 本体をおかしくしてしまいました。

 mt-check.cgi で問題がないようであれば mt-load.cgi の手順を飛ばしていきなり mt.cgi を実行してやれば、いつも通りのメニュー画面が現れてくれます。その後、 CSS ファイルとそれに必要な画像ファイルたちを引っ越し前と同じ位置上に展開し、再構築すれば以前と寸分違わない Weblog がそのまま引っ越し先で再現されるはずです。


--
May 8, 2005 Comments (0) Trackback (0)
コメントする
(必須)
(必須)

  • 投稿ボタンは一度だけ押してください。
  • コメントスパム対策のためにやむなく検閲を設けています。サイト管理人がスパムでないことを確認の後にサイト上に反映させるため、コメントが表示されるようになるまで約一日程度お待ちください。
  • 投稿ボタンを押して反応が無くとも、「しばらくじっと我慢の子」でお願いします。