Du använder ett Unix-uttag. När du läser "localhost" tolkar MySQL-klientbibliotek det inte som TCP-värd "localhost" och löser det namnet utan använder standardplatsen för Socket. För att använda TCP på den lokala maskinen måste du använda 127.0.0.1
som värdnamn.
För att specificera tidigare använd unix_socket
istället för host
i DSN. Platsen för uttaget som används för localhost
kan definieras vid kompilering eller i vissa versioner av PHP med pdo_mysql.default_socket
i php.ini
.