ごく一部の人にしか関係ないと思うんだけど、
同じことで困る人がいるかもしれないのでメモ。
問題
CakePHP 2 で、次のような症状に陥って困った。
- MySQL のユーザーやデータベース、テーブルの設定は間違ってない。
- database.php も正しく設置してある。
- 同じサーバで CakePHP 1 のシステムは正常に動いている。
- なのに Missing Database Connection とおこられる。
こんなエラーでおこられました。
Missing Database Connection Error: Sqlserver requires a database connection Error: Confirm you have created the file : app/Config/database.php.
ちゃんと作ってあるのに。
解決
PDO_MYSQL が入ってなかった。
CakePHP 2 からデータベースへのアクセスに PDO を使っているので
これが有効になってないと接続できない。
というわけで、PHP の configure にこのオプションをつけて
--with-pdo-mysql
コンパイルしなおして解決。
誰だよこのサーバ設定したのって思ったら自分だった。