SQLSTATE 2002 No such file or directory
2016-06-29 by dongnan
错误描述
更换操作系统,恢复 phpwind 备份 ,打开网站提示数据库连接错误,错误信息如下:
Uncaught error with message '[db.WindConnection.init] SQLSTATE[HY000] [2002] No such file or directory'
错误原因
尝试使用 mysql 命令行登陆正常,但是 phpwind 程序则无法连接数据库,检查发现因为新编译的 mysql sokcet 保存在 /usr/local/mysql/tmp/ 目录,
导致 phpwind 找不到 sokcet 文件。
解决方法
两种解决方法
临时方案是创建一个软连接文件
ln -s /usr/local/mysql/tmp/mysql.sock .
设置 socket 文件位置
编辑 my.cnf ,设置 mysql socket 位置 为 /tmp 目录
vim /etc/my.cnf
#...省略
socket = /tmp/mysql.sock