mysql.sockでハマる
symfony1.4のお話。
「doctrine:build-schema」
を使えば、DBの情報を調べてschema.ymlを自動で書いてくれるとのこと。
早速試してみたところ…
/Users/hchuno/sfproject% ./symfony doctrine:build-schema
>> doctrine generating yaml schema from database
Warning: PDO::__construct(): [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) in /Users/hchuno/sfproject/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php on line 470
PDO Connection Error: SQLSTATE[HY000] [2002] No such file or directory
…となって失敗。
mysql.sockの場所がMacだと違うため、database.ymlのdsnの項目に、
を追記することにした。
以下はdatabase.ymlの中身。
all:
doctrine:
class: sfDoctrineDatabase
param:
dsn: 'mysql:host=localhost;dbname=hchunodb;unix_socket=/tmp/mysql.sock'
username: root
password: null
改めて「doctrine:build-schema」を実行。
/Users/hchuno/sfproject% ./symfony doctrine:build-schema
>> doctrine generating yaml schema from database
>> doctrine Generate YAML schema successfully from database