Използвате Unix сокет. Когато четете "localhost", MySQL клиентските библиотеки не го интерпретират като TCP хост "localhost" и разрешават това име, а използват местоположението на Socket по подразбиране. За да използвате TCP на локалната машина, трябва да използвате 127.0.0.1
като име на хост.
За да посочите миналото, използвайте unix_socket
вместо host
в DSN. Местоположението на сокета, използван за localhost
може да се дефинира по време на компилиране или в някои версии на PHP с помощта на pdo_mysql.default_socket
в php.ini
.