OpenPNE 2.8 から 2.12 へバージョンアップをした際のメモです。OpenPNE にはバージョンアップ時の SQL, スクリプト(必要な場合)が入っていますが、一つ前のバージョンからしかバージョンアップは出来ません。2.8 から 2.12 などメジャーバージョンが飛んでいるようなバージョンアップのときは 2.8 -> 2.10 -> 2.12 と順番にバージョンアップする必要があります。

ちなみに OpenPNE のバージョンは 2.x.y の x が偶数なら安定版で奇数なら開発版です。2.8 から 2.12 へのバージョンアップはこの安定版のバージョンのみ行えばいいので、2.8 -> 2.10 -> 2.12 となります。

今回は実際のバージョンアップを本番サーバに対して行う前にローカルに環境を作成してテストしてから行いました。2.8 は公式サイトからはダウンロードできないので、Subversion のレポジトリから取得しました。
Revision 10736: /OpenPNE/tags/stable

OpenPNE 2.8 は OpenPNE というディレクトリ名でインストールしてあり、OpenPNE/public_html にドキュメントルートが設定されている構成です。

実際に行った手順は以下の通りです。

  • サーバにOpenPNE 2.10, 2.12 を それぞれ OpenPNE2_10 OpenPNE2_12 としてアップ
  • Openpne2_10, Openpne2_12 の config.inc.php を 2.8 を参考にして修正
  • OpenPNE をメンテナンスモードにする
  • MySQL のダンプを取る
  • Openpne2_10 の upgrade sql を実行
  • Openpne2_10 の setup/script/upgrade/config.inc.php を修正
  • Openpne2_10 の setup/script/upgrade の upgrade01.php, upgrade02.php を実行
  • Openpne2_12 の upgrade sql を実行
  • Openpne2_12/public_html にドキュメントルートを切り替える

MySQL のダンプを取り、上記のように元の 2.8 のファイルを弄らなければ万一バージョンアップ中にトラブルが合った場合に戻せます。

OpenPNE 2.10 にバージョンアップする際には setup/script/upgrade 以下にある config.inc.php を修正して、upgrade01.php, upgrade02.php を実行する必要があります。実行される内容は携帯電話の個体識別番号のハッシュ化と絵文字を変更するスクリプトです。また、cron の設定も変更する必要があります。/bin/tool_send_dairy_news.cron のファイル名が tool_send_daily_news.cron とtypo が修正されているようなので、2.8 で cron を設定している場合は変更する必要があります。

実際の作業前には公式サイトのバージョンアップのページと各バージョンに入っている setup/OpenPNE_Upgrade.html をよく読んでから行って下さい。
バージョンアップ|OpenPNE

関連する投稿