俺が管理している某所のSNS(OpenPNE)。
設立当時の目的は果たされていて、そのまま惰性で今日に至る。
レンタルサーバなので維持するために創始者の負担があるので
「それならいっそのことYO$HI鯖で」という結論になった。
まずはVMで「引っ越し」と「OpenPNEのバージョンアップ」の検証をした。
色々 問題を出しては解決して を繰り返してなんとか目処が立った。
バージョンは2.14→3.6系→3.8系(現行)の2段階行う必要があるのが面倒。
VMの時は問題なかったので、フロント側の資材(PHP類)とDBを丸っと入れれば動くと思っていたのだが
全くそんなことはなくw(ノ∀`)
そもそも2.14なんて古いバージョンなんて地雷じゃないか。
実際に画面を表示しようとしたら動かず。
ログを見るとPHPのバージョンによるワーニング、エラーが大量に出ている。
ワーニングは放置すれば良い(長期的に見れば良くないw)んだけどエラーなんてどうしようもないぞ。
※俺的にソースに手を加えるのは保守が大変になるからNG。
ここまでで1日消化。あー・・・もー・・・('A`#)
そうだ。
VM上で3.6にバージョンを上げてから移行してみよう。
この辺はVMで何度も実施しているので特に問題もなく。
DBを移行するにあたって問題となったのはテーブル。
- 2.14系のテーブルが残る
- 2.14系のテーブルが3.6系のテーブルに置き換わる
- 新規に3.6系のテーブルが作成される
この3パターンが存在する。
2. は実質3. みたいなもんだから良いとして、1. のテーブルは不要だろう。
3系のテーブル定義書に書かれていないテーブル(=不要)を待避しておけば余計なテーブルができずに済む。
で、極力VM上と同じ配置にしてDBも名前揃えて、VirtualHost書き換えて それ行けー!
やっぱりエラー。
なんでだ・・・。
ログを見ると相変わらず怒濤のワーニングが並び、その中に
テーブルがない とか、恥ずかしいエラーが出ている。
そんなテーブルは確かにない。
・・・いや、あった。
テーブル定義書に書かれていないテーブルでさっき待避したヤツだ。
ちょっと待て。
公式サイトでは”古いですよー”と書かれているので指摘されても逃げ道があるけど
問題はそこじゃなくて、最新の正しいテーブル定義書が見当たらないってことだ。
致命的にダメだろコレ・・・。
(ソース調べるの面倒だから)結局全部入れないとだめか。
もしくは3.6を新規で入れてテーブルの差分を取るか。
最新のテーブル定義書とER図とCRUD図出しやがれ―!(何様
テーブルを入れて動かしたら、やっぱりエラー。
PDOがどうのとか言ってるよー、入ってるだろうにー。
php.ini にpdo_mysql.default_socket=/var/lib/mysql/mysql.sock
入れてるのにダメだー・・・。
ワケわからん。
これで更に1日潰すw('A`)