【问题标题】:Laravel PHPUnit PDOException exceptionLaravel PHPUnit PDOException 异常
【发布时间】:2015-02-07 22:29:30
【问题描述】:

我不知道为什么当我运行 PHPUnit 测试时,我得到以下错误:

PDOException: SQLSTATE[HY000] [2002] 没有这样的文件或目录

我的测试环境数据库设置是:

return [

    'fetch' => PDO::FETCH_CLASS,

    'default' => 'mysql',

    'connections' => [
        'mysql' => [
            'driver'    => 'mysql',
            'host'      => 'localhost',
            'database'  => 'clg_test',
            'username'  => 'root',
            'password'  => 'veryHardPass',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ]
    ],

    'migrations' => 'migrations',

];

我之所以使用 MySQL 而不是 SQLite,是因为我的迁移文件使用了 SQLite 不支持的dropColumn。我在设置中通过Artisan::call('migrate') 调用迁移。

如果我实际上通过php artisan migrate --env=testing 在终端中手动调用迁移,则迁移成功并创建数据库。

为什么我会遇到上述问题?

【问题讨论】:

    标签: php mysql laravel laravel-testing


    【解决方案1】:

    尝试将localhost 更改为127.0.0.1。您收到的消息表明脚本无法通过套接字连接到 MySQL,但使用 ip 应该可以工作。

    【讨论】:

    • 谢谢,现在我收到连接被拒绝错误!
    • 嗯,这是一个开始... :) 不幸的是,我不知道是什么原因造成的。我希望你能找到错误。
    猜你喜欢
    • 2019-08-07
    • 2014-06-06
    • 2016-06-13
    • 2014-07-07
    • 2014-11-07
    • 1970-01-01
    • 2016-12-04
    • 1970-01-01
    • 2016-09-23
    相关资源
    最近更新 更多