CentOS51でバックアップサーバ/(2)コンテンツ移行 の変更点


#navi(CentOS51でバックアップサーバ)

*インストールと基本設定 [#s66c41e7]

#contents

** 主なアプリとコンテンツ [#rf4bfbe7]
-OSインストールで入れ物ができて、アプリとコンテンツを移行してサーバとして完成させる。毎度のことながら、主な内容は、
-- トップページ類(html)
-- 掲示板関係(CGI)
-- wiki(pukiwiki)
-- Blog(Wordpress+MySQL)
-- SNS(OpenPNE+MySQL)

- データベース以外は、丸コピーで問題ない。文字コードに関しては、前回苦労してutf-8に変換済みなので、その点は楽。
- ターゲットとなるディレクトリーは以下のとおり
 /var/www/html/
 /var/www/cgi-bin/
 /var/www/OpenPNE/

- 設定関係のファイルも、忘れずにコピーしておく
 /etc/httpd/conf/httpd.conf
 /etc/php.ini
 /var/www/.htpasswd

** コピー方法 [#ee64b778]
- 現在のサーバ側で、各ディレクリー/ファイルをtarで圧縮
- WinSCPを使って、端末を経由して、新サーバへコピー
- 新サーバ側で、圧縮ファイルをそれぞれ解凍する

 現サーバ側:各ターゲットの上位のDIRに移動して、圧縮
 [root@kuraric5 ~]# cd /var/www
 [root@kuraric5 www]# tar cvf html_bak20080316.tar html/
 (以下同様に)
 
 [eizo@kuraric5 ~]$ ls -l 20080316bak/
 合計 766160
 -rw-r--r-- 1 root root  22056960  3月 17 11:21 OpenPNE_bak20080317.tar
 -rw-r--r-- 1 root root   2457600  3月 16 15:21 cgi-bin_bak20080316.tar
 -rw-r--r-- 1 root root 759142400  3月 16 15:21 html_bak20080316.tar
 -rw-r--r-- 1 root root     10240  3月 17 11:19 htpasswd_bak20080317.tar
 -rw-r--r-- 1 root root     40960  3月 16 15:33 httpd_conf_bak20080316.tar
 -rw-r--r-- 1 root root     51200  3月 16 15:29 php_ini.tar

- html/関係をまとめると、結構なサイズのファイルになり転送も時間がかかるが、まぁ、イメージデータも多いのでしょうがないということで。

 新サーバ側:同じDIRで、解凍
 [root@kuraric51 ~]# cd /var/www
 [root@kuraric51 www]tar xvf html_bak20080316.tar

- ただし、例によって、デフォルトでファイアウオールが起動しているので、これを解除する。また、httpd.confを変更した場合は、httpdの再起動が必要。これはは忘れずに。

 [root@kuraric51 ~]# chkconfig --list iptables
 iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off
 [root@kuraric51 ~]# chkconfig iptables off
 [root@kuraric51 ~]# chkconfig --list iptables
 iptables        0:off   1:off   2:off   3:off   4:off   5:off   6:off
 
 [root@kuraric51 ~]# /etc/rc.d/init.d/httpd restart
 httpd を停止中:                                            [  OK  ]
 httpd を起動中:                                            [  OK  ]

- 以上で、トップページ、掲示板、wiki等のMySQLが絡んでいないコンテンツは正常に動作する。

** アプリソフト [#ebaa596f]
- MySQLインストールは、前回同様実施。手順はwikiの記事のとおり。パスワード設定、不要なDB削除などを忘れずに。
- なお、 /etc/my.conf のコピーを忘れたので、その設定(文字コード関連)も忘れずに。詳細は前回のwiki参照


- データベースの移行には、「phpMyadmin」を使ってきたが、これは html/配下に含まれているので、あらめてのインストール作業は不要。ただし、php-mysqlがインストールされていないと起動しないので、忘れずにインストールすること!

 [root@kuraric51 ~]# yum -y install php-mysql


** Wordpressのデータ移行 [#aee8c7b3]
- 前回同様、phpMYadminを使って、「エクスポート」「インポート」する。 手順は、前回と同じだが、文字コードの変換は不要。
- インポート時の注意事項としては、あらかじめ新サーバ側で、Wordpressが使用するデータベースとユーザを作成しておく必要がある。さもないと、インポート時にエラーとなってしまう。
- 前回どうだったか忘れた? (Wordpress自体のインストールやセットアップをやったので、その点が違うといえば違うかな。。。)

 [root@kuraric51 ~]# mysql -u root -p
 Enter password:
 Welcome to the MySQL monitor.  Commands end with ; or \g.
 Your MySQL connection id is 9 to server version: 3.23.58
 
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
 mysql> grant all on *.* to kurari identified by 'kurari';  ←ユーザ作成、パスワード設定
 Query OK, 0 rows affected (0.00 sec)
 
 mysql> flush privileges;
 Query OK, 0 rows affected (0.00 sec)
 
 mysql> create database wordpress;         ← データベース作成
 Query OK, 1 row affected (0.02 sec)

- これで、あっけなくWordpress は完了!

** OpenPNEの移行 [#x443d422]
** OpenPNEの移行 ーー mysqldump を使う! [#x443d422]
- これは初挑戦だが、インポートでいきなりこけた(^^;)
 エラー!!
 恐らくあまりにも大きなファイルをアップロードしようとしました。

- Wordpress と同じ手順で行くと思ったら、ファイルサイズが桁違いの大きさ
  wordpress  700KB少々
  openpne    8MBを超え

- さぁ、弱ったぞというわけで、ネット検索。答えはあった。[[mysqldumpでバックアップ&復元>http://phpspot.net/php/pgmysqldump%82%C5%83o%83b%83N%83A%83b%83v%81%95%95%9C%8C%B3.html]]
- mysqldump というコマンドがあった。基本的な使い方は、
&ref(mysqldump.jpg);&br;&br;
- これを使ってみたら、一発だった。
- ①現サーバ側
 まず、dump 保存先に注意! 
 [root@kuraric5 www]# mysqldump -u root -p管理者パスワード openpne > openpne_dump20080317
 [root@kuraric5 www]# ls 
 OpenPNE      error                    icons
 html         openpne_dump20080317     cgi-bin  

-②WinSCPで、端末経由で新サーバにコピーする
 
-③新サーバ側:
 (1)まず、OpenPNE用のユーザとデータベースを作成しておく
 [root@kuraric51 www]# mysql -u root -p
 Enter password:
 Welcome to the MySQL monitor.  Commands end with ; or \g.
 Your MySQL connection id is 3 to server version: 5.0.22
 
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
 mysql> CREATE DATABASE `openpne` DEFAULT CHARACTER SET utf8;
 Query OK, 1 row affected (0.00 sec)
 
 mysql> exit
 Bye
 
 (2)続いて、リストア実行
 [root@kuraric51 www]# mysql -u root -p管理者パスワード openpne < /home/eizo/openpne_dump20080317
 
 (3)URLの調整 /sns/で接続できるように
 [root@kuraric51 www]# echo "Alias /sns /var/www/OpenPNE/public_html" > /etc/httpd/conf.d/openpne.conf
 
 (4)httpdとmysqldを再起動する
 [root@kuraric51 www]# /etc/rc.d/init.d/httpd restart
 httpd を停止中:                                            [  OK  ]
 httpd を起動中:                                            [  OK  ]
 [root@kuraric51 www]# /etc/rc.d/init.d/mysqld restart
 MySQL を停止中:                                            [  OK  ]
 MySQL を起動中:                                            [  OK  ]

- とまぁ、いとも簡単でした。データ移行するだけなら、phpmyadminより簡単だった。Wordpressもこの手でいけると思うが、まだ試してはいない。

** cron設定を忘れずに! [#t011f1b4]
- 新しくサーバを構築した場合、OpenPNE用のcron登録(デイリーニュース配信等の定期作業等)設定は引き継がれていない。
- 面倒でも、再度コマンドを実行して、同じ内容で登録しておくこと。
 [root@kuraric51 www]# crontab -e 
- 詳細は[[CentOS5で新サーバ構築/(8)OpenPNEのインストール]]の『・OpenPNE用のcron登録』を参照

** 接続試験 [#q7ef8da2]
** 接続試験では、hostsの修正も忘れずに! [#q7ef8da2]
- パソコンから接続試験するためには、hostsファイルの設定変更が必要
 C:\WINDOWS\system32\drivers\etc\hosts
 ================
 192.168.1.230   kurarinet.com	#kurari_C51 2008/3/17
 #192.168.1.250	kurarinet.com	#kurari_C50
 ================
- これを書き換えておかないと、どっちのサーバに接続しているのか分からんことに。

- というわけで、またひとつ新しいことを覚えました(^^)


#navi(CentOS51でバックアップサーバ)
トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS   リンク元