Exception 'yii\db\Exception' with message 'SQLSTATE[HY000] [2002] No such file or directory’错误的解决方法

这个是由于 通常我们在参考 教程在 MAC OS LINUX下安装 MYSQL 时,
默认将PHP.ini 中的以下三项留空导致的YII2所需的PDO组建无法找到mysql.sock(或mysqld.sock)文件地址导致的
mysql.default_socket = 
pdo_mysql.default_socket=
mysqli.default_socket =

解决方法  配置php.ini文件 配置好 mysql.sock 和 mysqld.sock 文件路径的参数  (二选其一)主要的是看你的数据库支持的是哪种

  1. 首先用 find / -name    mysql.sock  命令查找mysql.sock文件所在的位置 
  2.  注意 如果找不到 mysql.sock 那就找mysqld.sock文件 
  3. 用pwd命令查看所在绝对路径 并且复制
  4. 打开php.ini文件 配置以下参数

 mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket= /tmp/mysql.sock
mysqli.default_socket =/tmp/mysql.sock

注意  将 /tmp/mysql.sock替换 自己查找出来的路径  

保存退出 重新 启动apche  就可以了

你可能感兴趣的:(项目实战)