今日も移行作業
考えてみると,新サーバでruby 1.8.7のredmineをホストしなくてはならない期間は限られて居るであろうから,バックエンドにプロキシさせることにしよう.
で,いま旧サーバにphpMyAdminを入れている.
os upgradeしたら,yumが変
[yc@dti-vps-srv21 yum.repos.d]$ yum search zts
Loaded plugins: priorities
Repository 'vz-base' is missing name in configuration, using id
Repository 'vz-updates' is missing name in configuration, using id
215 packages excluded due to repository priority protections
Warning: No matches found for: zts
No Matches found
とりあえず,/etc/yum.repo.d/の設定にある,priority=1を全部削除(前の管理人がつけたのかな).そうしたら,excluded...はでなくなった.
sudo yum install php53*
起動できず.
php53をあきらめて削除し,yumでphpMyAdminを入れ直す(phpは5.1.6).
httpdはささくっと起動.昨日と同じ,セッションのエラー!ふふふ.今度は一瞬で解決(httpdがdaemon権限で上がっていて,/var/lib/php/sessionはapacheの所有)
・・・が,今度はmysqlのライブラリが読めないと・・・涙
phpmyadminはあきらめ,redmineのdbはコマンドラインでエクスポートする.
http://www.redmine.org/projects/redmine/wiki/HowTo_Migrate_Redmine_to_a_new_server_to_a_new_Redmine_version
↑にスクリプトがあるが,手作業でやる.
$ /usr/bin/mysqldump --user=user_redmine --password=PASSWORD--skip-extended-insert db_redmine > ~/redmine.sql
↑でダンプ
以下,新サーバ
$ RAILS_ENV=production bundle exec rake db:migrate
$ /usr/bin/mysql --user=redmine --password=PASSWORD redmine < ~/redmine.sql
$ ruby script/server webrick -e production
一部,うまくいかない.~/redmine.sqlでdrop tableしていることで,スキーマが壊れてたようだ.drop table文を出さないでエクスポートする方法を探す.
$ /usr/bin/mysqldump --user=user_redmine --password=PASSWORD --skip-extended-insert --no-create-info db_redmine > ~/redmine.sql
↑でcreate tableは抑制できる.
しかし,
$ /usr/bin/mysql --user=redmine --password=PASSWORD redmine < ~/redmine.sql
ERROR 1136 (21S01) at line 21757: Column count doesn't match value count at row 1
$ /usr/bin/mysqldump --user=user_redmine --password=PASSWORD --complete-insert --no-create-info db_redmine > ~/redmine.sql
↑でいけそう.
wiki extentionのテーブルがないと言われた.後は,戻ってきてから作業する.
wiki extentionは使ってないと言うことなので,それ以外をDBに投入.
$ /usr/bin/mysql -f --user=redmine --password=PASSWORD redmine < ~/redmine.sql
- f オプションでエラー無視.
ん〜ん.
1)drop table有りのexportを読み込んだ場合
・ いくつかのエラー画面.ログインはできるようだ.
2) DBの初期化をしないでdrop 無しを投入
・ ログインできない
3) DB初期化後,dropなしを投入
・ admin(デフォルト)以外のユーザが見えない.
新しい方のredmineのバージョンをあわせてやりなおすか・・・.