php artisan migrate時にnew PDOConnectionできない問題を解決したいです。
発生している問題・エラーメッセージ
[root@123xxx fugafuga]# php artisan migrate PDOException : SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known at /srv/reborn-laravel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68 64| if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) { 65| return new PDOConnection($dsn, $username, $password, $options); 66| } 67| > 68| return new PDO($dsn, $username, $password, $options); 69| } 70| 71| /** 72| * Determine if the connection is persistent. Exception trace: 1 PDO::__construct("mysql:host=mysql;port=3306;dbname=hogehoge", "root", "password", []) /srv/reborn-laravel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68 2 Illuminate\Database\Connectors\Connector::createPdoConnection("mysql:host=mysql;port=3306;dbname=hogehoge", "root", "password", []) /srv/reborn-laravel/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:98
.envファイルを下記に記載します
DB_CONNECTION=mysql DB_HOST=mysql DB_PORT=3306 DB_DATABASE=hogehoge DB_USERNAME=root DB_PASSWORD=password
試したこと
DB_HOSTには
localhost or 127.0.01 - SQLSTATE[HY000] [2006] MySQL server has gone awayというエラーになる 123xxx(Dockerのホスト) or 12.34.56.78(DockerホストのIP) - SQLSTATE[HY000] [1130] Host '123xxx' is not allowed to connect to this MySQL serverというエラーになる
になります。
補足情報
- 環境状況は以下になります
os | web | docker | php | mysql | laravel |
---|---|---|---|---|---|
centos7 | nginx | 18.06.1-ce | 7.2.10 | 8 | 5.7.6 |
- hogehogeという名前のdatabaseは既に作成済みです(ログインできる)
- 以下にインストールしたモジュールをリスト記載します
[root@123xxx fugafuga]# php -m [PHP Modules] bz2 calendar Core ctype curl date dom exif fileinfo filter ftp gd gettext hash iconv json libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar readline Reflection session SimpleXML sockets SPL sqlite3 standard tokenizer wddx xml xmlreader xmlwriter xsl zip zlib [Zend Modules]
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。