さくらのVPS512から1Gへ移行。
apacheコンテンツ移行。DBインポート完了。設定まだ。wiki.rutake.com移行完了
DB設定完了。cakephp,blog.rutake.com移行完了
SVN移行完了。SSLはIP指定をしているのでそこを変えないといけなかった。
Cronジョブ移行。バックアップでDBパスワードが変わっていたためそれなりにシェルを変更
一か月かけて準備。普段からrsyncでデータの同期はとっていた。
IP変えて再起動したら反応せず。コンソールから復旧させたが、原因不明だった。 ファイヤーウォールでSquidのポートを通していなかった。こちら設定漏れが多いので注意。Sambaのユーザー移行漏れ!
まずは、それほどアクセスのないページや自分専用コンテンツなどを自作サーバーに移行する。基本的にhttpd.confとssl.confを持ってきて、SVNのアクセス制限元を変更するぐらいで動いた。ssl.conf持ってこないとSSLに強制接続になるので今後の課題。
psql: FATAL: Ident authentication failed for user "postgres" SQLSTATE[08006] [7] FATAL: Ident authentication failed for user "postgres"
# "local" is for Unix domain socket connections only local all all trust
#host all all 127.0.0.1/32 ident sameuser host all all 127.0.0.1/32 md5
2.4にしてみた。いつものようにhttpd.confの設定が必要。 appのみSVNからコピーして無事接続成功
DB単位でエクスポート mysqldump -u root -p MYDATABASE > /var/tmp/MYDATABASEdmp.sql 移行元のDBを消す。 [root@epox cake2.4]# mysqladmin -u root -p drop MYDATABASE 空のDBを作成 mysql> create database MYDATABASE default charset utf8; インポート mysql -u root -p MYDATABASE < MYDATABASEdmp.sql
目的のディレクトリの一階層上に移動 cd /var/www/UPPER_DIR tar cvzf blog.tar.gz blog/
DBも同じようにバックアップして圧縮しておく(18Mが十分の一に)
受け取りサーバー側では同じく一階層上で解凍 DBもインポートしておく 空のDBを作成(utf-8でOK) mysql> create database MYDATABASE default charset utf8; インポート mysql -u root -p MYDATABASE < MYDATABASEdmp.sql
移行元 mysqldump -u root -p --add-drop-table cakephp rooms > rooms.sql gzip rooms.sql 移行先 gzip -d rooms.sql.gz mysql -u root -p cakephp < /var/tmp/rooms.sql
mysql> CREATE TABLE httpd_count ( -> recorded DATETIME not null, -> httpd_count int unsigned not null -> ); mysql> LOAD DATA LOCAL INFILE '/var/log/httpd_count.log' INTO TABLE httpd_count FIELDS TERMINATED BY ',';
svnadmin dump /home/svn/repos | gzip > /var/tmp/myrepos.tar.gz
サーバー再インストールからコンソール上がりきるまで10分は見ておいたほうがよい。DNSがなかなか切替わらず見切り発車で実施。SSLの秘密鍵のバックアップを忘れてSSL月だと起動失敗したのでSSLは後日。blogとwikiは移行完了。cronの改行コードがおかしくてエラーとなっていた。LFじゃないとNG
SVN移行,hosts設定,
SSL証明書,.htpasswd
createdb homedb_uft -E UTF-8 -T template0 ダンプSQLをUTF-8に変換 SET client_encoding = 'UTF-8';
データベース移行は順調。 シンボリックリンクを介してのリライトはNGのようなのでディレクトリ名変更 DBアクセス。ユーザーを追加していなくてアクセス失敗。 simple_dom_htmlライブラリを入れてなくて失敗
内部向けは自宅サーバーにおいておくか? wikiはアクセス数が減少しているのでどうする? 旧MTのコンテンツを廃止したい。
0,20,40 | 道路情報 |
0,15,30,45 | 道路情報jpeg |
0,15,30,45 | 株式情報5時に終了して7時に開始 |
毎時10分 | 鉄道情報。4-23まで |
毎時15分 | 空室情報、10-24まで |
毎日13時5分 | スキーエリア情報 |
結論毎時50-00までが一番あいている時間帯。 鉄道情報は更新状況を整理して15分ヘッドにできないか見直す。jpegも20分単位にできないか見直す。
項目 | 計画日 | 実施日 | 備考 |
wiki | 11/16 | 11/16 | |
S3バックアップ | 11/16 | 11/17 | バックアップスクリプト修正 |
toolsアプリのみ | 11/17 | 11/17 | cake2.6で動かしてみる。.htacessではまった |
バッチをローカルDBにて動かす | 11/17 | 11/17 | すんなり動いた。 |
cake2.6プロビジョニング | 11/18 | 11/19 | ちょいと後回しで、無事成功。 |
cronプロビジョニング | 11/18 | 11/18 | ansible化するが、cronファイルを復元するのでもよいかも |
postgresリモート接続にて、tftool移植 | 11/18 | 11/18 | postgresql.conf,hg_hda.conf,iptables,postgresユーザー以外での接続に変更など結構大変だったがphpモジュールは普通に動いた |
postgres移植 | 11/20 | 11/20 | ローカルから接続させる |
postgresバックアップansible化 | 11/20 | 11/20 | ローカルから接続させる |
GRANT ALL ON テーブル名 TO ユーザー名; GRANT ALL ON シーケンス名 TO ユーザー名;