CentOS6.5 / MySQL5.1 / PHP5.3.3 で稼働しているWordpressをEC2 Amazon Linux 環境(MySQL5.5 / PHP5.5)に移行します。
移行元からの移行データの準備
DBデータは、移行元MySQLから mysqldumpでエクスポートします。ファイル系は、Wordpress ディレクトリをそのままtarで固めます。
この2つのファイルをsftp等で移行先のEC2に持っていきます。
データベースは移行元と同じ情報(DB名、ユーザー名)で作成します。
$ mysql -u root -p
mysql> CREATE DATABASE [db_name] DEFAULT CHARACTER SET utf8;
mysql> GRANT ALL PRIVILEGES ON [db_name].* TO '[user]'@'localhost' IDENTIFIED BY '[user_pass]';
作った空のデータベースに移行元からのエクスポートファイルをインポートします。
mysql -u [user] -D [db_name] -p < [エクスポートファイル]
あっさりとデータが入りました。
MySQL5.1 から MySQL5.5 への移行の場合、いくつか仕様が変わっているようなのでいろいろ対処しなくてはいけないことがあるようです。
ダンプの時、「–all-databases」しないで、個別のDB毎にダンプしてインポートすると特に気にせず取り込めました。
次に、ファイルはドキュメントルートに持っていき展開します。
$ sudo mv wordpress.tar.gz /var/www/
$ cd /var/www
$ sudo tar zxvf wordpress.tar.gz
$ sudo rm wordpress.tar.gz
その後、apacheを設定します。
$ cd /etc/httpd/conf.d/
$ sudo vi xxxx.conf
xxxx.conf
<Directory "/var/www/wordpress"> AllowOverride All
</Directory>
<VirtualHost *:80> ServerAdmin webmaster@xxxx.com
DocumentRoot /var/www/wordpress
ServerName xxxx.com
ErrorLog logs/xxxx.com-error_log
CustomLog logs/xxxx.com-access_log combined env=!nolog
</VirtualHost>
apache を再起動
sudo /etc/init.d/httpd restart
ブラウザでアクセスすると、正常にWordpressが動作しました。
なんか、あっさりいきすぎてブログに書くまでもないかなぁとも思いましたがメモということで。
今回は、ドメインの変更はなかったですが、下記も移行の際に参考になりそうです。
あと、今回は5.1から5.5へのアップデータではなかったですが、下記も大事そうなのでメモしておきます。