J'utilise Vagrant avec du laravel frais 5.4 installé. Après avoir exécuté auth, j'ai effectué la migration pour migrer les tables MySQL. Tous ces processus aboutissent, mais lorsque j'essaie de me connecter ou de m'inscrire pour tester le système, un message d'erreur s'affiche:
SQLSTATE [HY000] [2002] Connexion refusée.
Mais ma base de données fonctionne parfaitement puisque je suis déjà capable de migrer les tables. Quelle solution possible pourrait être? vérifier l'image jointe (j'utilise Ubuntu 16.04)
Essayez de changer votre DB_Host de 127.0.0.1 en localhost. et si cela ne fonctionne toujours pas, essayez d'utiliser le port mysql par défaut vers 3306
Si vous essayez d'exécuter la migration artisanale php à partir de la machine hôte, vous devez définir le fichier .env conf DB_PORT = 33060 car il s'agit d'un port vagrant/Homestead en cours d'écoute. Mais lorsque je change, mon application cesse de fonctionner. Je suggère donc à SSH de vagabonder et d'exécuter php artisan migrer de VM et vous n'aurez aucun problème.
si vous utilisez laravel, peut-être que votre PDO PHP Extension n'est pas définie. dans votre commentaire de php.ini extension = php_pdo_mysql.dll
si vous n'avez pas accès à php.ini, faites ceci: Ajoutez ceci à config/database.php dans la section mysql
'options' => [PDO::ATTR_EMULATE_PREPARES => true],
votre code devrait être comme ça:
'mysql' => [
'driver' => 'mysql',
'Host' => env('DB_Host', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'options' => [PDO::ATTR_EMULATE_PREPARES => true],
'prefix' => '',
'strict' => true,
'engine' => null,
],