WordPressのバージョンアップは、機能的には必要なかったとしてもセキュリティ上のバグ等も考慮すると適宜、最新バージョンに更新する必要がります。
ただ、バージョンアップ後に一部の機能が正常に動作しなくなる恐れもあるので、バージョンアップ前にバックアップを取得します。
この記事では、いざ問題が発生した際にスムースに作業を行えるように、バージョンアップ手順と旧バージョンに戻す方法について、実際に確認した結果をまとめています。
以下、WordPressバージョン3.5から3.6.1へのバージョンアップ、3.6.1から3.5への戻し、について確認しました。
1)バックアップ前の状態
①WordPessバージョン3.5
②テーマバージョン
Twenty Tenのバージョン1.5
Twenty Elevenのバージョン1.5
Twenty Twelveのバージョン1.1
③保存済み投稿
投稿タイトル:バックアップ前バージョン3.5
2)バックアップ
①データベースバックアップ
$ mysqldump --add-drop-table -h localhost -u wptest -p wptest | bzip2 -c > 20131008_wptest_db.bz2 Enter password: $ ls 20131008_wptest_db.bz2
②WordPressディレクトリバックアップ
ディレクトリ、ファイルの所有者、権限を変えずにバックアップします。
ファイルの所有グループは”apache”ですが、作業に使用しているユーザーアカウントは”apache”グループには所属していないので、sudoコマンドを使っています。
※sudoの設定については以下の記事参照。
「sudoで特定のコマンドのみをroot権限で実行する」
$ sudo cp -Rp /var/www/html/wptest/ .
3)バックアップ後に投稿追加、テーマアップデート、WordPressバージョンアップ
①投稿の追加
投稿タイトル:バックアップ後投稿
②テーマ更新
Twenty Tenのバージョン1.5→1.6
Twenty Elevenのバージョン1.5→1.6
Twenty Twelveのバージョン1.1→1.2
③WordPress自動アップデート
3.5→3.6.1
管理画面の左サイドメニューで”更新”をクリック。
“いますぐ更新”ボタン押下
下記メッセージが表示
WordPress を更新 http://ja.wordpress.org/wordpress-3.6.1-ja.zip から更新をダウンロードしています… 更新を展開しています… 展開したファイルをチェックしています… 最新のバージョンをインストールしています…
成功すると画面が変わり”WordPress 3.6.1 へようこそ”が表示されます。
4)WordPress3.5に戻す
①バックアップ済みのWordPressディレクトリに置き換える
$ rm -rf /var/www/html/wptest $ sudo cp -Rp wptest /var/www/html/wptest
②バックアップ済みのデータベースをリストアする
$ bzip2 -d 20131008_wptest_db.bz2 $ ls wptest 20131008_wptest_db $ mysql -h localhost -u wptest -p wptest
5)管理画面にログインし、戻しの確認
①WordPressバージョン
バージョンが3.5かどうかは管理画面からは分かりませんでしたが、3.6.1への更新のリンクボタンは表示されています。
WordPressディレクトリ内の/wp-includes/version.phpを見るとバージョン3.5になっています。
②テーマのバージョン
Twenty Tenのバージョン1.5
Twenty Elevenのバージョン1.5
Twenty Twelveのバージョン1.1
バックアップ時のバージョンに戻っています。
③投稿
バックアップ後の投稿はなくなっていて、バックアップ時の状態に戻っています。