Doctrine orm 没有这样的文件或目录

Doctrine orm 没有这样的文件或目录,doctrine-orm,zend-framework2,Doctrine Orm,Zend Framework2,我将ZF2与DoctrineOrm一起使用,最近在运行OSX Yasomite的mac上安装了一个使用vagrant的本地环境 除了在尝试使用Doctrine供应商工具时出现以下错误外,所有操作均按预期进行: ./vendor/bin/doctrine-module orm:schema-tool:create --dump-sql 错误内容如下: 未捕获异常“PDOException”,消息为“SQLSTATE[HY000][2002] 中没有这样的文件或目录 example.com/tru

我将ZF2与DoctrineOrm一起使用,最近在运行OSX Yasomite的mac上安装了一个使用vagrant的本地环境

除了在尝试使用Doctrine供应商工具时出现以下错误外,所有操作均按预期进行:

./vendor/bin/doctrine-module orm:schema-tool:create --dump-sql
错误内容如下:

未捕获异常“PDOException”,消息为“SQLSTATE[HY000][2002] 中没有这样的文件或目录 example.com/trunk/vendor/doctor/dbal/lib/doctor/dbal/Driver/PDOConnection.php:43

编辑

有问题的类的第43行:父::_构造$dsn、$user、$password、$options

class PDOConnection extends PDO implements Connection, ServerInfoAwareConnection
{
     public function __construct($dsn, $user = null, $password = null, array $options = null)
        {
            try {
                parent::__construct($dsn, $user, $password, $options);
                $this->setAttribute(PDO::ATTR_STATEMENT_CLASS, array('Doctrine\DBAL\Driver\PDOStatement', array()));
                $this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            } catch (\PDOException $exception) {
                throw new PDOException($exception);
            }
        }
当我从catch语句中转储变量时,它们与预期的一样

我可以通过管理员访问mysql位置:

网站加载错误,因为我无法创建数据库

我记得当我最初设置本地MAMP环境时,遇到了类似的问题,必须将以下行添加到pdo设置中:

/Applications/MAMP/tmp/mysql/mysql.sock

我忍不住想我也需要做同样的事情,但是我不知道该怎么做

编辑:

我看到套接字位于这里:/var/lib/mysql/mysql.sock

连接到此服务器的正确设置是什么?以下操作不起作用:

'connection' => [
            'orm_default' => [
                'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
                'params' => [
                    'host'     => '192.168.56.101/',
                    'port'     => '3306',
                    'user'     => 'games_cloud',
                    'password' => 'games_cloud',
                    'dbname'   => 'games_cloud',
                    'unix_socket' => '/var/lib/mysql/mysql.sock'   //To use Doctrine Entity Generator
                ]
            ]
        ],

任何帮助都将不胜感激

成功实现了这一点,这是一个设置:

'connection' => [
            'orm_default' => [
                'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
                'params' => [
                    'host'     => 'localhost',
                    'port'     => '3306',
                    'user'     => 'games_cloud',
                    'password' => 'games_cloud',
                    'dbname'   => 'games_cloud',
                    'unix_socket' => '/var/lib/mysql/mysql.sock'
                ]
            ]
        ],

这一行的内容是:example.com/trunk/vendor/doctor/dbal/lib/doctor/dbal/Driver/PDOConnection.php:43…它试图查找什么文件,但失败了?你确定是unix套接字吗?我已经更新了问题以包含方法,第43行是这样的:父::_构造$dsn,$user,$password,$options;在我的例子中,数据库服务在重新启动后没有运行。启动它解决了问题。OS=>Linux
'connection' => [
            'orm_default' => [
                'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
                'params' => [
                    'host'     => 'localhost',
                    'port'     => '3306',
                    'user'     => 'games_cloud',
                    'password' => 'games_cloud',
                    'dbname'   => 'games_cloud',
                    'unix_socket' => '/var/lib/mysql/mysql.sock'
                ]
            ]
        ],