XAMPP環境からMAMP環境に移す


ローカル環境の整理

自分の備忘録代わりに投稿します。XAMPPのMySQLの調子が悪かったので試しにMAMPの環境でやってみました。
具体的にはXAMPP環境のフォルダを別ファイルに移し、アンインストール。そしてMAMP環境にて再度プロダクトをローカル環境にて動かす事を目標に設定しました。

ファイルが読み込めない…

早速MAMPのアクセスファイルを動かしてlocalhostで開いてみると

Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

早速エラーが、、、そもそも開くことが出来なかった…。エラー分を読んでみると、ファイルが開けないとのこと。理由を調べてみたら、ファイルをドキュメントファイル下で開いていたため日本語名で読み込めなくなったことが発覚。やっぱり全部英語で書かなきゃだめなんですね。

ファイルをCドライブ直下に移して再度挑戦。

なぜかまだ開けない。index.phpにアクセスしようとしてもロード時間が延々と続きタイム合うとしてしまう。理由を調べてみると、データベースにアクセス出来ないとこういう症状が出るらしい。

このとき私は気づきました。XAMPPをアンストした際にMySQLも消してしまった事を。そして今はMAMP環境下のMySQLを動かしていることを、、、

仕方ないのでMAMPのPHPMyAdminでテーブルを再度作り直すことに。幸いにもテーブルは3つとそこまで多くもなく複雑でもないのでコードや本番環境のデータベースを見ながら再度設計。

データベースが読み込めない

ここまででなんとか元の形に近づいて来たけどまだ開けない。しっかりとユーザーとパスワードも再設定し、コードを修正。だがまだ開けない。

$dbh = new PDO('mysql:dbname=kuchikomi;host=localhost:8888;' 

どうやらこの辺りが怪しいと睨む。
ということでMAMPのサイトを見てみることにする。するとホーム画面に以下のような記述が。

ふむふむつまりportを8888から8889に変えれば行けるってことか?

$dbh = new PDO('mysql:dbname=kuchikomi;host=localhost:8889;' 

ということで上記の様にコードを変更。すると、、、

無事アクセス出来ました!

機能のエラー

ファイルを読み込めたのでデータベースとも接続出来たけどデータベースの追加時にエラーが起こったので修正していく。

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'review_date' in 'field list'

口コミを投稿しようとしたらこんなエラーが。。。
読んでみるとreview_dateのカラムが見つからないらしい。
そんなバカなと思いながらコードを見ても特に問題点は見つからない。それならばとMySQLにアクセスしてカラムを見てみると、、、

原因分かりました。はい。「,」<- こいつの所為でした。
こいつを修正してリロードしてみたら出来ました。

なんとかこれでローカル環境で問題なく動かすことに成功、、、
長い道のりだった。

まとめ

少し作業が面倒であったがちゃんと事前の準備をすればXAMPP環境からMAMP環境に移し替えることは可能、おそらくエクスポート機能だったりを上手く活用すればもっと早くできると思います。

また、この方法が良くない方法であったり、なにか間違いがあれば遠慮なく教えていただけると幸いです。