小编Sam*_*zar的帖子

Symfony 4 Doctrine 无法从控制台运行 [2002] 没有这样的文件或目录

我正在使用 symfony 4 并且在运行准则控制台命令时出现此错误:

In AbstractMySQLDriver.php line 108:

An exception occurred in driver: SQLSTATE[HY000] [2002] No such file or directory  
Run Code Online (Sandbox Code Playgroud)

我认为这是因为连接有问题,但是当我运行应用程序时,它可以毫无错误地访问数据库,所以我无法想象连接有什么问题。

我能够通过手动创建数据库并使用

php bin/console doctrine:schema:create --dump-sql
Run Code Online (Sandbox Code Playgroud)

但这确实是不需要的,因为稍后需要更新架构时,所有数据都会丢失,因为我需要重新创建架构而不是更新它。

该应用程序在手动执行 SQL 后正常工作(easyadmin 工作正常)。

这是我的配置:

.ENV:

DATABASE_URL=mysql://root:root@127.0.0.1:3306/test
Run Code Online (Sandbox Code Playgroud)

学说.yaml:

parameters:
     env(DATABASE_URL): ''

doctrine:
    dbal:
       driver: 'pdo_mysql'
       server_version: '5.7'
       charset: utf8mb4
Run Code Online (Sandbox Code Playgroud)

我试过 drop 命令只是为了测试,它抛出了这个:

In DropDatabaseDoctrineCommand.php line 93:


Connection does not contain a 'path' or 'dbname' parameter and cannot be dropped.  
Run Code Online (Sandbox Code Playgroud)

所以我将 dbname 添加到 Doctic.yaml 并没有奏效。我还尝试删除缓存、创建新项目、使用远程 mysql 和使用 sqlite,但两种情况下的错误都是相同的!!

在此先感谢您的帮助 !

php doctrine symfony symfony-flex symfony4

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

doctrine ×1

php ×1

symfony ×1

symfony-flex ×1

symfony4 ×1