我是CakePHP的新手,仅在配置过程中运行,但感到困惑的是,为什么Cake无法访问我的MySQL数据库。 Cake信息页面说我的tmp目录是可写的,正在使用FileEngine进行缓存(不知道这意味着什么),并且我的数据库配置文件存在,但是CakePHP无法连接到数据库。

这是我的设置详细信息:

  • PHP 5.3(预先安装在Snow Leopard上)
  • MySQL 5.1.40 64位
  • CakePHP 1.2.4.8284

  • 这是我经历的步骤:
  • 创建了一个名为cake_blog的MySQL模式
  • 创建了一个名为cake_blog_user的MySQL用户
  • 授予cake_blog_user对cake_blog @ localhost和cake_blog @%适当的权限
  • 将database.php.default文件复制到database.php,并根据需要对数据库连接详细信息进行编辑

  • 这是来自database.php的相关配置数据:

    var $ default = array(
    '驱动程序'=>'mysql',
    'persistent'=>否,
    '主机'=>'本地主机',
    '登录'=>'cake_blog_user',
    '密码'=>'cake_blog_password',
    '数据库'=>'cake_blog',
    '前缀'=>'',
    );

    我在这里想念什么吗?我还应该提到,如果我在测试数据库连接之前将echo mysql_error();插入/cake/libs/view/pages/home.ctp文件中,则显示的错误是“没有这样的文件或目录”。我不知道它在说什么文件或目录。

    谢谢!

    最佳答案

    如果是套接字,则只需编辑/etc/php.ini以反射(reflect)以下内容

    pdo_mysql.default_socket=/tmp/mysql.sock
    


    mysql.default_socket = /tmp/mysql.sock
    

    关于php - CakePHP:无法访问MySQL数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1635474/

    10-09 16:25
    查看更多