copser
copser

Reputation: 2641

Laravel msql configuration %db_name% cache problem

I'm trying to configure msql db with laravel and I have a strange problem. After searching on line I'm still not getting my migration done.

in my .env I have

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT='%db_port%'
DB_DATABASE='forge'
DB_USERNAME='root'
DB_PASSWORD='password'

so after changing .env I did php artisan cache:clear then php artisan config:cache, after that running php artisan migrate I got

   Illuminate\Database\QueryException  : SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known (SQL: select * from information_schema.tables where table_schema = %db_name% and table_name = migrations)

  at /Users/p/Documents/Project/hub-family-server/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668| 

  Exception trace:

  1   Doctrine\DBAL\Driver\PDOException::("SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known")
      /Users/p/Documents/Project/hub-family-server/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:31

  2   PDOException::("PDO::__construct(): php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known")
      /Users/p/Documents/Project/hub-family-server/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:27

  Please use the argument -v to see more details.

Now interacting with the application with php artisan tinker and checking

Psy Shell v0.9.9 (PHP 7.2.19 — cli) by Justin Hileman
>>> env('DB_USERNAME')
=> null
>>> config('database.connections.mysql.database')
=> "%db_name%"
>>> env('DB_HOST')
=> null
>>> env('DB_USERNAME')
=> null
>>> 

So I'm not sure anymore what is happening, also I did update the dbal with composer require doctrine/dbal but that did not do anything. Can someone please help me understand what is happening thanks.

Upvotes: 1

Views: 173

Answers (4)

Gaurav Panchani
Gaurav Panchani

Reputation: 1

Please update your .env file properly.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=test_db
DB_USERNAME=root
DB_PASSWORD=123

Please update DB_PORT number, remove single quote in DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD and put "DB_PASSWORD=" blank if you are working in local host and your local host have not any password.

Upvotes: 0

copser
copser

Reputation: 2641

After some time struggling I've manage to connect mysql with the application.

.env was not loading properly so after

php artisan config:cache

I needed to

php artisan key:generate also I was missing DB_PORT.

Upvotes: 1

SUJITKUMAR SINGH
SUJITKUMAR SINGH

Reputation: 359

The problem lies in the DB_PORT , it should be 3306 or 8000 if you are using mamp server make it 8889 and it should work

Upvotes: 1

Mohammed Omer
Mohammed Omer

Reputation: 1236

i think the problem is about the DB_PORT , it should be 3306, or whatever according to server settings. change the DB_PORT and if all other data is correct , it should work.

Upvotes: 1

Related Questions