【问题标题】:No database connection via doctrine in symfonysymfony 中没有通过学说连接数据库
【发布时间】:2011-04-20 01:02:47
【问题描述】:

我正在编写 symfony 教程 jobeet,但在通过学说获得与 MySQL 数据库的数据库连接时遇到问题。开发环境:Mac OS X 和 XAMPP。

命令 php symfony doctrine:build-schema 给了我以下错误信息:

警告:PDO::__construct(): [2002] /Users/xx/projects/myproject/lib/ 中没有这样的文件或目录(试图通过 unix:///var/mysql/mysql.sock 连接) vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php 在第 470 行
PDO 连接错误:SQLSTATE[HY000] [2002] 没有这样的文件或目录

database.yml中的数据库设置:

 all:
  doctrine:
    class: sfDoctrineDatabase
    param:
      dsn: 'mysql:host=localhost;dbname=my_project_db'
      username: root
      password: root

MySQl 正在运行。用户名和密码正确。数据库“my_project_db”已存在。

谁能给我提示一下出了什么问题?

【问题讨论】:

  • /var/mysql/mysql.sock 文件是否存在?如果没有,请尝试使用 locate 查找该文件。
  • 是的。它是 /Applications/XAMPP/xamppfiles/var/mysql/ 中的一个空文件

标签: php mysql symfony1 doctrine xampp


【解决方案1】:

这种情况也发生在我身上,我使用的是 MAMP Pro。如果您使用 MAMP Pro,则值得检查主窗口。查看“MySQL”选项卡,然后查看“仅允许本地访问”复选框。如果已选中,则应取消选中它。最后,点击“应用”按钮。

【讨论】:

    【解决方案2】:

    我在我的苹果 Mac 上遇到了同样的问题,并做了以下操作:

    cd /var; sudo ln -s /Applications/XAMPP/xamppfiles/var/mysql/ mysql
    

    为我工作。

    【讨论】:

      【解决方案3】:

      尝试在/var/mysql 中创建指向您的mysql.sock 的符号链接:

      sudo ln -s /Applications/XAMPP/xamppfiles/var/mysql /var/mysql
      

      【讨论】:

      • sudo ln -s /Applications/XAMPP/xamppfiles/var/mysql /var/mysql
      【解决方案4】:

      在 Mac OSX Lion 上:

      cd /var;
      sudo mkdir mysql; cd mysql;
      sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock mysql.sock
      

      【讨论】:

        【解决方案5】:

        或使用 MAMP

        cd /var; sudo ln -s /Applications/MAMP/tmp/mysql mysql 
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-03-01
          • 2014-12-21
          • 2019-07-30
          • 1970-01-01
          相关资源
          最近更新 更多