本文实例讲述了php pdo_mysql连接报错Connection failed: SQLSTATE[HY000] [2002] No such file or directory问题的解决方法。分享给大家供大家参考。具体方法如下:

错误描述:

Connection failed: SQLSTATE[HY000] [2002] No such file or directory

环境概述:

MacOS

xampp 搭建的开发环境 apache mysql php

xampp 已支持mysql oracle 测试ok,且 phpinfo已上显示支持pdo_mysql pdo_pgsql pdo_sqlite

其中mysql我用的是brew包管理安装到机器里面的,而非xampp自带的mysql

php pdo 连接报错 Connection failed: SQLSTATE[HY000] [2002] No such file or directory

开始以为找不到文件是因为 url rewrite导致的,(因为从nginx切换到apache)结果跟踪程序发现是 new pdo 报错

经过搜索一些资料研究发现:

这个是php.ini配置文件中pdo_mysql.default_socket指定的mysql.sock路径不对

我的mysql.sock文件在 /private/tmp/mysql.sock

所以要设置:

复制代码 代码如下:

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

如果不知道自己的mysql.sock在哪里可以搜索(因为编译安装,和yum、apt-get、或者brew等包管理工具安装的位置不一样)

sudo find / -name 'mysql.sock'

下面是官方给出bug修复

1. Open up php.ini (mine was in /private/etc/)

2. locate this line: pdo_mysql.default_socket=/var/mysql/mysql.sock

3. Change the line to: pdo_mysql.default_socket=/tmp/mysql.sock

4. Restart apache

1、我这里需要补充下,如果是新系统或者刚玩php的同志,在Mac的系统中php.ini 文件不存在。

2、需要在/private/etc/目录下cp  php.ini.default

php.ini ,然后再做修改下

3、但是如果使用的xampp mysql作为数据库,那么就不需要使用官方的step2,直接写下面方式就可以了。

复制代码 代码如下:

pdo_mysql.default_socket=/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock

解决方法三:

复制代码 代码如下:

sudo vim /etc/php.ini

把以下三个原来空白的值都设置为:

复制代码 代码如下:

/tmp/mysql.sock

mysql.default_socket = /tmp/mysql.sock

pdo_mysql.default_socket= /tmp/mysql.sock

mysqli.default_socket =/tmp/mysql.sock

都修改了

修改完成后使用

复制代码 代码如下:

sudo /usr/sbin/apachectl restart

问题搞定!

希望本文所述对大家的PHP程序设计有所帮助。

php pdoconnection,php使用pdo连接报错Connection failed SQLSTATE的解决方法相关推荐

  1. pdo 连接数据库 报错 could not find driver 解决方法

    在windows 下,调试一个PHP程序时,报了这个错误, could not find driver 原来我的这个程序中用到了PDO对象, 连接mysql 5.  在PHP的默认设置中,只打开了ph ...

  2. linux ssh 报错 Write failed: Broken pipe 解决方法

    目录 原理 方法1:通过客户端配置 方法2:服务器端配置 方法3:临时SSH命令配置 总结 在使用SSH连接远程服务器的时候,如果长时间不操作,再次进入 Terminal 时就会有卡死一段时间没有响应 ...

  3. python requests 报错 Connection aborted ConnectionResetError RemoteDisconnected 解决方法

    错误:requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end close ...

  4. pip安装kolla-ansible时报错Cannot install ‘PyYAML‘的解决方法

    pip安装kolla-ansible时报错Cannot install 'PyYAML'的解决方法 参考文章: (1)pip安装kolla-ansible时报错Cannot install 'PyYA ...

  5. python https请求报错:SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] 解决方法

    python爬虫,使用requests库发送https请求报错:SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] 解决方法: imp ...

  6. 转)VCSA 6.5重启无法访问,报错“503 Service Unavailable”的解决方法

    转)VCSA 6.5重启无法访问,报错"503 Service Unavailable"的解决方法 1. 问题 重启vcenter,登陆vsphere client,提示 &quo ...

  7. vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文)...

    vs2010一运行就报错deven.exe assert failure 解决方法,卸载系统中.netFramework最新版本的(简体中文) 转载于:https://www.cnblogs.com/ ...

  8. 登录mysql报错Failed to connect to backoff 或 Failed to get D-Bus connection: Operation not permitted解决方法

    报错: Failed to get D-Bus connection: Operation not permitted 或 mysql -u root -p 登录mysql时报错 2020-09-16 ...

  9. 微信二次分享签名错误php,微信二次分享报错invalid signature问题及解决方法

    基于微信公众号开发的h5页面(使用jssdk接口),由用户A分享给用户B,用户B再次分享这个页面时,不能成功分享.问题出在用户B收到的分享链接与用户A打开的链接不同 A用户的链接为 B用户收到的连接 ...

  10. dedecms后台报错“Undefined variable cfg_domain_cookie”的解决方法

    dedecms后台报错"Undefined variable cfg_domain_cookie"的解决方法 打开调试模式 Notice: Undefined variable: ...

最新文章

  1. 关于MySQL的四种事务隔离级别!
  2. python数据处理实例-Python数据分析实例操作
  3. java:多态的实现机制
  4. visual c 语言参考手册pdf,Microsoft-Visual-C-6-0语言参考手册(三).pdf
  5. 《Python编程:从入门到实践 》[Eric Matthes著] 中文pdf非扫描版
  6. C#委托的异步调用[转]
  7. php属性未定义,PHP-警告-未定义的属性:stdClass-修复?
  8. Lua实现二进制串与Hex显示串的相互转换
  9. 转:卷积神经网络_(1)卷积层和池化层学习
  10. java的编程规范_JAVA编程规范-OOP规范
  11. 10个常用的python可视化工具
  12. Linux nohup命令详解
  13. 常见的Ajax写法汇总
  14. excel怎么设置选项选择_使用Excel选项按钮选择答案
  15. 雪球网 存入mysql
  16. 渤海银行增收不增利:信用卡等不良率暴涨,李伏安被市场“打脸”
  17. matlab 中图字体设置,关于matlab绘图中字体及图片大小等的设置
  18. 神武4手游等待服务器响应,《神武4》手游快速告别自闭 还能这样玩?
  19. outlook你的邮件服务器证书无效,Outlook添加网易邮箱账号提示服务器的加密连接不可用的解决方法...
  20. QQ、YY与webRTC回声消除效果对比分析与展望

热门文章

  1. java一个进程可以村多少个线程_一台 Java 服务器可以跑多少个线程?
  2. 南阳oj-----一种排序(优先队列法)
  3. python分布式爬虫_python-分布式爬虫
  4. #Pragma Pack(n)与内存分配
  5. android 隐藏系统音量的接口_Android9.0 系统默认配置清单
  6. 熔断机制什么意思_什么是“熔断机制”,为什么交易所需要它?看完你就明白了!...
  7. oracle tsm rman,TSM下oracle备份
  8. java用io流存信息_Java io流的学习
  9. 机器学习- 吴恩达Andrew Ng Week9 知识总结 Recommender Systems
  10. Sublime 3 打开GBK 编码文件中文乱码 解决办法