Symfony 4 Doctrine not working from console [2002] No such file or directory

Samuel S. Salazar picture Samuel S. Salazar · Jan 7, 2018 · Viewed 12.4k times · Source

I´m working with symfony 4 and this error ocurr when runnning doctrine console commands:

In AbstractMySQLDriver.php line 108:

An exception occurred in driver: SQLSTATE[HY000] [2002] No such file or directory  

I think this is because there´s something wrong with the connection but when I run the application it has access to the database without errors, so I can not imagine what is wrong with the connection.

I was able to continue working by creating manually the database and using

php bin/console doctrine:schema:create --dump-sql

But this is really unwanted because later when the schema needs to be updated all data would be lost because i would need to re-create the schema instead of updating it.

The app works normally after executing manually the SQL (easyadmin works fine).

Here are my configurations:

.ENV:

DATABASE_URL=mysql://root:[email protected]:3306/test

doctrine.yaml:

parameters:
     env(DATABASE_URL): ''

doctrine:
    dbal:
       driver: 'pdo_mysql'
       server_version: '5.7'
       charset: utf8mb4

I tried the drop command just to test and it throwed this:

In DropDatabaseDoctrineCommand.php line 93:


Connection does not contain a 'path' or 'dbname' parameter and cannot be dropped.  

So I add dbname to doctrine.yaml and didn´t worked. I also tried removing the cache, creating a new project, using a remote mysql, and using sqlite but the errors are the same in both cases !!

Thanks in advance for the help !

Answer

Jonathan KABLAN picture Jonathan KABLAN · Oct 20, 2018

Please change DB_HOST=localhost to DB_HOST=127.0.0.1

> doctrine/doctrine-bundle

DATABASE_URL=mysql://${DB_USER}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_NAME}