sql >> Database >  >> RDS >> Mysql

Vreemd gedrag Laravel Homestead Database-verbinding

Uw toepassing wordt uitgevoerd op het IP-adres dat is opgegeven in Homestead.yaml dus wanneer localhost relatief is ten opzichte van uw toepassing, werkt poort 3306. Als je artisan zonder SSH in je zwervende vm uitvoert, voer je het commando uit ten opzichte van de localhost van je machine, niet de vm, dus je probeert de migraties uit te voeren op een machine zonder database.

De reden dat poort 33060 voor uw lokale machine werkt, is omdat Homestead deze poort standaard doorstuurt naar poort 3306 van uw zwervende virtuele machines. Maar vanwege uw .env nu poort 33060 specificeert, kan de zwervende virtuele machine nu poort 3306 niet bereiken.

Verlaat de DB_HOST ingesteld op 127.0.0.1 met poort 3306 en SSH in je zwerver vm via de vagrant ssh opdracht om uw migratieopdracht uit te voeren.

Of u kunt meerdere .env . hebben bestanden voor uw verschillende omgevingen




  1. Hoe kunnen we gegevens verzenden in MySQL als het formulier is ingesteld op enctype=multipart/form-data in node.js?

  2. Slaapstand:constraintName is null in MySQL

  3. Hoe kan ik teken omzetten naar een datumformaat?

  4. Een null-variabele doorgeven aan een SQL Stored Procedure vanuit C#.net-code