sql >> Database teknologi >  >> RDS >> Mysql

PDOException SQLSTATE[HY000] [2002] Ingen sådan fil eller mappe

Laravel 4: Skift "vært" i app/config/database.php fil fra "localhost" til "127.0.0.1"

Laravel 5+: Skift "DB_HOST" i .env fil fra "localhost" til "127.0.0.1"

Jeg havde præcis det samme problem. Ingen af ​​ovenstående løsninger virkede for mig. Jeg løste problemet ved at ændre "host" i filen /app/config/database.php fra "localhost" til "127.0.0.1".

Ikke sikker på, hvorfor "localhost" ikke fungerer som standard, men jeg fandt dette svar i et lignende spørgsmål løst i et symfony2-indlæg. https://stackoverflow.com/a/9251924/1231563

Opdatering: Nogle mennesker har spurgt om, hvorfor denne rettelse virker, så jeg har forsket lidt i emnet. Det ser ud til, at de bruger forskellige forbindelsestyper som forklaret i dette indlæg https://stackoverflow.com/a /9715164/1231563

Problemet, der opstod her, er, at "localhost" bruger en UNIX-socket og ikke kan finde databasen i standardbiblioteket. Men "127.0.0.1" bruger TCP (Transmission Control Protocol), hvilket i bund og grund betyder, at den kører gennem det "lokale internet" på din computer, hvilket er meget mere pålideligt end UNIX-stikket i dette tilfælde.



  1. SQL Server:Isolationsniveau lækker på tværs af poolede forbindelser

  2. PGError:FEJL:aggregater er ikke tilladt i WHERE-klausulen på en AR-forespørgsel af et objekt og dets har_mange objekter

  3. Forstå SQL Server LOCKS på SELECT-forespørgsler

  4. PostgreSQL:Fuld tekstsøgning - Hvordan søger man delvise ord?