Você está usando um soquete Unix. Ao ler as bibliotecas de cliente MySQL "localhost", não o interprete como host TCP "localhost" e resolva esse nome, mas use o local do Socket padrão. Para usar o TCP na máquina local, você deve usar
127.0.0.1
como nome de host. Para especificar o passado use
unix_socket
em vez de host
no DSN. A localização do soquete usado para localhost
pode ser definido em tempo de compilação ou em algumas versões do PHP usando pdo_mysql.default_socket
no php.ini
.