Llevaba un tiempo bastante molesto para mi incapacidad para usar las herramientas de generación de CakePHP, la antigua utilidad Bake (actualmente cake bake). El problema es que siempre me salía con un error de conexión con la base de datos.
Yo utilizo en mi máquina de trabajo el paquete MAMP (Apache-MySQL-PHP para Mac OS X), instalado tal como viene por defecto.
El caso es que he podido entender el problema y solucionarlo.
bake busca comunicarse con la base de datos a través del socket
/var/mysql/mysql.sock
Pero si instalamos MAMP sin tocar su configuración para nada, el socket está en:
/Applications/MAMP/tmp/mysql/mysql.sock
La solución es crear un enlace simbólico:
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock
Pero hay un par de requisitos previos. Primero tenemos que crear un directorio mysql bajo var:
cd /var
sudo mkdir mysql
y luego crear el enlace
sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock
Y listo.
Nota final
Una cosilla... uso sudo porque al menos en Mac OS X mi usuario de trabajo no tiene permisos sobre la carpeta var para crear el directorio y el enlace simbólico, sin embargo, éste funciona sin ningún problema.