From bbf7974715b9a43bab207df75ef69209cdf13850 Mon Sep 17 00:00:00 2001 From: "David T. Sadler" Date: Mon, 17 May 2021 15:59:24 +0100 Subject: Move to building localy rather than on remote server --- .../index.html | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 www/posts/laravel/2020-12-14/sqlstate-hy000-2002-php-network-getaddresses-getaddrinfo-failed/index.html (limited to 'www/posts/laravel/2020-12-14') diff --git a/www/posts/laravel/2020-12-14/sqlstate-hy000-2002-php-network-getaddresses-getaddrinfo-failed/index.html b/www/posts/laravel/2020-12-14/sqlstate-hy000-2002-php-network-getaddresses-getaddrinfo-failed/index.html new file mode 100644 index 0000000..0cb27d1 --- /dev/null +++ b/www/posts/laravel/2020-12-14/sqlstate-hy000-2002-php-network-getaddresses-getaddrinfo-failed/index.html @@ -0,0 +1,42 @@ + + + + + + SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed + + + + + + + + + + + + + + +

SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed

Mon 14th December 2020 By David T. Sadler.

One of the first things you do when creating a new Larvel application is run php artisan migrate to create the application database tables. However you may come across the below message.

$ php artisan migrate
+
+Illuminate\Database\QueryException
+
+SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution (SQL: select * from information_schema.tables where table_schema = testsite and table_name = migrations and table_type = 'BASE TABLE')
+
+at vendor/laravel/framework/src/Illuminate/Database/Connection.php:678
+674▕         // If an exception occurs when attempting to run a query, we'll format the error
+675▕         // message to include the bindings with SQL, which will make this exception a
+676▕         // lot more helpful to the developer instead of just the database's errors.
+677▕         catch (Exception $e) {
+678▕             throw new QueryException(
+679▕                 $query, $this->prepareBindings($bindings), $e
+680▕             );
+681▕         }
+682▕
+
++33 vendor frames
+34  artisan:37
+Illuminate\Foundation\Console\Kernel::handle()

The cause of this issue is due to a change introduced to the .env.example file. This changed the environment variable DB_HOST from 127.0.0.1 to mysql. The reason for this change is to support [Laravel Sail](https://laravel.com/docs/8.x/sail) which is a Docker development environment for Laravel.

The change means your Laravel application will try and connect to a database server with the hostname of mysql. Unless this exists then the application can't connect.

To resolve the issue just change the value back to 127.0.0.1

DB_HOST=127.0.0.1

Links

Commit that changed .env.example.Laravel SailLaravel - Read More Posts.

I don't have comments as I don't want to manage them. You can however contact me at the below address if you want to.

Email david@davidtsadler.comThe contents of this site is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Copyright © 2021 David T. Sadler.

Return to Homepage.
+ + -- cgit v1.2.3-13-gbd6f