微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP无法通过localhost成功连接mysql怎么办

下面一起来了解下PHP无法通过localhost成功连接mysql怎么办,相信大家看完肯定会受益匪浅,文字在精不在多,希望PHP无法通过localhost成功连接MysqL怎么办这篇短内容是你想要的。

首先搞清楚MysqL之连接localhost与127.0.0.1的区别:

127.0.0.1属于TCP/IP连接,是通过网卡传输,依赖网卡,并受到网络防火墙和网卡相关的限制。localhot属于Unix socket方式连接,是不经网卡传输!它不会解析成 IP,不受网络防火墙和网卡相关的的限制,也不会占用网卡、网络资源。一般设置程序时本地服务用localhost是最好的。


我的操作系统PHP使用127.0.0.1却能连接MysqL

PHP无法通过localhost成功连接mysql怎么办

但无法通过localhost连接MysqL

PHP无法通过localhost成功连接mysql怎么办

尝试PHPmyadmin也遇到同样的错误,不过也出现比较有价值的错误提示套接字没有正确设置):

PHP无法通过localhost成功连接mysql怎么办

这里说套接字指的是PHPMysqL通信的一个.sock文件

分析一下问题:

我的MysqL使用的是mariadb5.5,通过yum安装,所以问题出在MysqL本身的可能性几乎没有。

通过PHPinfo查找socket关键字,可以发现MysqL.default_socket没有设置认值,而pdo_MysqL给出了认值,sock的位置

PHP无法通过localhost成功连接mysql怎么办

PHP无法通过localhost成功连接mysql怎么办

编辑PHP.ini给予MysqL.default_socket认路径,并且跟MysqL套接文件存放路径对应按理就能解决问题。不过还有个偷懒的办法,把MysqL套接文件PHP指定的认路径创建软连接,就无需修改PHP.ini了。

查看MysqL套接字路径:

# cat /etc/my.cnf

PHP无法通过localhost成功连接mysql怎么办

创建软连接:

# ln -s /var/lib/MysqL/MysqL.sock /tmp 

PHP无法通过localhost成功连接mysql怎么办

问题解决

PHP无法通过localhost成功连接mysql怎么办

看完PHP无法通过localhost成功连接MysqL怎么办这篇文章后,很多读者朋友肯定会想要了解更多的相关内容,如需获取更多的行业信息,可以关注我们的行业资讯栏目。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐