Movable Type 4.25 から 4.26 へのアップグレード

Movable Type 4.25 から 4.26 へのアップグレード

Posted at June 12,2009 1:55 AM
Tag:[4.26, MovableType, Upgrade]

当ブログを、Movable Type 4.25 から 4.26 へアップグレードしました。ということで、アップグレード手順を紹介します。4.2x から 4.26 のアップグレードでも参考になると思います。

アップグレード

4.26 にアップグレードした後、検索速度が若干向上しています。

アップグレードは個人の責任で行ってください。正常にアップグレードできなかった場合、申し訳ありませんが当ブログに質問を頂いても解決するお手伝いをすることはできません。作業前には1項に示すバックアップ作業などを行い、ブログのバックアップを行ってください。

1.プラグインディレクトリについて

アップグレードは、新しいアプリケーションディレクトリを作成する方法を紹介していますが、この方法では、プラグインディレクトリにインストールしたプラグインを新しいアプリケーションディレクトリのpluginsディレクトリにコピーする手間が増えます。

以前も紹介しましたが、当ブログでは、自分でインストールしたプラグインを標準のディレクトリ配下に置くのをやめ、別のところに配置しました。そのおかげで、本エントリーで示すプラグインファイルのコピー作業は(ほぼ)なくなり、かなり楽になりました。

Movable Type のアップグレードで旧アプリケーションディレクトリのプラグインを新アプリケーションディレクトリにコピーしない方法

デフォルトでバンドルされているプラグインと、自分でインストールしたプラグインの差分を確認しながら必要なものだけをコピーする手間が省け、非常に便利です。

なお、さきほど「ほぼ」と書いたのは、プラグインにCGIが含まれるものについてはこの方法が使えないためです。また、mt-static/pluginsにあるファイルのコピー作業は必要です。

2.ブログのバックアップ

4.25 の状態でブログのバックアップを取得します。

バックアップした後、正しくバックアップされているかどうか、バックアップファイルを確認した方が良いでしょう。圧縮ファイルでバックアップした場合、バックアップファイルを解凍すれば、XMLファイルなどがテキストエディタで確認できます。
またはバックアップを2回繰り返し、同じサイズになっていれば、経験上大丈夫だと思います。

バックアップはこれ以外にも方法があります。SQLiteであれば、mt-config.cgi に指定してる DBファイルを丸ごとダウンロードしておけば良いでしょう。MySQL であれば、コマンドラインからバックアップを実行するか、phpMyAdmin によるバックアップが可能です。

なお、バックアップはアップグレード前だけでなく、定期的に行いましょう。

3.アプリケーションディレクトリのリネーム

「アプリケーションディレクトリ」は、mt.cgi などがあるディレクトリです。このアプリケーションディレクトリ自体を FTP ツールでリネームして、プログラムを上書きしないようにしています。

例えば、アプリケーションディレクトリ名が

mt

であれば、

mt--

などに変更します。

なお、アプリケーションディレクトリ名を変更した後、一時的にブログ管理画面にアクセスできなくなりますので、注意してください。

4.アプリケーションディレクトリ作成

リネーム前と同じディレクトリを FTP ツールで(同じ位置に)作成します。上の例では、

mt

というディレクトリを作成します。

5.Movable Type 4.26 のアップロード

Movable Type 4.26 のプログラム一式を、アプリケーションディレクトリ配下にアップロードします。

スタティックディレクトリをアプリケーションディレクトリと別のディレクトリに配置している場合は、スタティックディレクトリも手順3~4と同じ要領でディレクトリを作成すると良いでしょう。

6.mt-config.cgi のコピー

旧アプリケーションディレクトリ(mt--)にある mt-config.cgi をFTPツールで一旦ローカルPCにダウンロードし、新アプリケーションディレクトリ(mt)にアップロードします。

この作業を行わずに、うっかり mt.cgi にアクセスすると、新規インストールの動作になってしまう場合があるので注意してください。間違ってアクセスしても、5項の後でパーミッション変更が行われていなければエラーになります。正常にアクセスできた場合も、ブラウザの操作をそれ以上行わなければ問題ありません。

7.SQLiteのデータベースをコピー(データベースにSQLite/SQLite2を使用している場合)

SQLite を使用していて、データベースファイルが旧アプリケーションディレクトリ(mt--)配下にある場合は、FTP ツールで一旦ローカル PC にダウンロードし、新アプリケーションディレクトリ(mt)配下の同じディレクトリにアップロードします。

SQLite のデータベースファイルがどれか分からない場合は、mt-config.cgi を任意のエディタで開き、Database という項目の右側に書かれている内容が SQLite のデータベースへのパスとファイル名になります。

8.CGIファイルの属性変更

5項でアップロードした、アプリケーションディレクトリ直下にある、各CGIファイル(.cgi)の属性を 644 から 755 や 705 などに変更します。属性が分からない場合は、旧アプリケーションディレクトリの CGI ファイルを参照してください。

9.ブラウザから mt.cgi にアクセス

mt.cgi にアクセスすると、アップグレードが直ちに完了するので「Movable Type に戻る」をクリックします。

アップグレード完了

ブログ管理画面にアクセスできれば完了です。

10.プラグインファイルのコピー

旧アプリケーションディレクトリから必要なプラグインをコピーします。外部のテンプレートセットを利用していた場合は、必ず新しい plugins ディレクトリに外部テンプレートセットのディレクトリを、plugins ディレクトリにコピーしてください。場合によっては mt-static/plugins ディレクトリからのコピーも必要です。

以上です。

関連記事
zenback
人気エントリー
トラックバックURL


コメント

毎回素晴らしい情報をありがとうございます!
私のMTOSも無事に4.25から4.26へアップグレードできました。

ただし、私はコアサーバーを使っておりますが、Cron Deamonから来るメールに、エラーのようなメッセージが出るようになりました。

気にしなくても大丈夫でしょうか?

Subroutine load_iter redefined at lib/MT/Object.pm line 758.
(in cleanup) Can't call method "registry" on an undefined value at lib/MT/Component.pm line 558 during global destruction.

とりあえずご報告いたします。
何かのご参考になりましたら幸いです。

[1] Posted by 全ては必然日記 : June 13, 2009 8:04 AM

>全ては必然日記さん
こんばんは。
情報ありがとうございました。
シックスアパートに確認したところ、エラーメッセージが出ても通常の使用では支障ないようです。
それではよろしくお願い致します。

[2] Posted by yujiro logo : June 17, 2009 11:55 PM

こんばんは。毎度お世話になっております。
毎度毎度で恐縮なのですが、完全につまってしまったので
教えていただきたく、コメントさせてもらいました。

最近4.23→4.621へバージョンアップしました。
手順としては
1 旧mtディレクトリのリネーム
2 新mtディレクトリ作成後、そこにDLした新ファイルを展開
3 旧mt-config.cgiを新mtフォルダにコピー
4 mtフォルダ内のcgiファイルの属性変更(755等)
5 mt.cgiにアクセス後自動アップグレード作業
6 再構築(エラー無し)
と、記載通りやったつもりです。

忘れてた作業があったのですが、
・mt-config.cgiが644のままだった。
・小粋さんのテンプレートのコピーを忘れてた。
(後でmt/pluginsに入れました)
については処理しました。

SQLはmysqlです。同sqlでは特に作業はないと言うことで
よろしかったでしょうか?

で、再構築しまして、ブログをアップしたところ、通常通りアップでき、
TBをかけることもできたので、安心していましたが、
数日後ヘンなことに気が付きました。
誰からもTBもコメントもないのです。
で、確認したところ、再構築後のTBログを見たら、
スパムTB一つ送られてきていないのです。
というか、ログに表示がされないのです。
自分の他のブログからTBをかけたら、TBをかけることが
成功しているような表示が出てますので、
MT側で弾いたわけではないようです。
しかし、ログには表示されません。
再構築後からのTBログを表示させることは可能でしょうか?
 また、コメントに関してもコメント確認までは問題ありませんが
投稿すると「Internal Server Error」が出てしまいます。

情けない話ですが、システムを理解できていない部分もありまして、
全く対策がわかりません。

どこに問題があるのかわかりません。
是非ご指導いただけないでしょうか?

[3] Posted by oguogu : June 27, 2009 12:51 AM

>oguoguさん
こんばんは。
ご返事が遅くなり申し訳ありません。
ご質問の件ですが、不具合は解消されましたでしょうか。
トラックバックの件は、申し訳ありませんが当方では原因不明です。
それではよろしくお願い致します。

[4] Posted by yujiro logo : July 5, 2009 2:31 AM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)