Jared Jared - 3 months ago 10
MySQL Question

CakePHP: Can't access MySQL database

I'm new to CakePHP and am just running through the configuration process, but am stumped why Cake can't access my MySQL database. The Cake info page says my tmp directory is writable, the FileEngine is being used for caching (don't know what this means), and my database configuration file is present, but that CakePHP cannot connect to the database.

Here are my setup details:


  • PHP 5.3 (pre-installed on Snow Leopard)

  • MySQL 5.1.40 64-bit

  • CakePHP 1.2.4.8284



Here are the steps I went through:


  • Created a MySQL schema called cake_blog

  • Created a MySQL user called cake_blog_user

  • Granted cake_blog_user the appropriate permissions on cake_blog@localhost and cake_blog@%

  • Copied the database.php.default file to database.php and edited the database connection details as appropriate



Here is the relevant configuration data from database.php:


var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'cake_blog_user',
'password' => 'cake_blog_password',
'database' => 'cake_blog',
'prefix' => '',
);


Am I missing something here? I should also mention that if I insert an
echo mysql_error();
into the /cake/libs/view/pages/home.ctp file right before it tests the database connection, the error displayed is "No such file or directory." I have no idea what file or directory it's talking about.

Thanks!

Answer

If it is the socket, just edit /etc/php.ini to reflect the following

pdo_mysql.default_socket=/tmp/mysql.sock

and

mysql.default_socket = /tmp/mysql.sock
Comments