链接mysql时,经过localhost是经过套接字来访问,经过127.0.0.1则是tcp/ip来访问php
没法经过localhost访问说明是套接字的问题mysql
首先找mysql.sock的位置sql
sudo find / -name mysql.socktcp
假设mysql.sock的位置是在var/lib/mysql目录下ip
而php默认调用的sock是在var/mysql下面或者在tmp下面,因此执行下面两个操做,基本能够解决sudo
sudo ln -s /var/lib/mysql/mysql.sock /var/mysql/mysql.socklocalhost
sudo ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock