网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

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

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

创新互联公司"三网合一"的企业建站思路。企业可建设拥有电脑版、微信版、手机版的企业网站。实现跨屏营销,产品发布一步更新,电脑网络+移动网络一网打尽,满足企业的营销需求!创新互联公司具备承接各种类型的成都网站设计、网站建设项目的能力。经过10多年的努力的开拓,为不同行业的企事业单位提供了优质的服务,并获得了客户的一致好评。

首先搞清楚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怎么办

这里说套接字指的是php跟mysql通信的一个.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怎么办这篇文章后,很多读者朋友肯定会想要了解更多的相关内容,如需获取更多的行业信息,可以关注我们的行业资讯栏目。


文章名称:PHP无法通过localhost成功连接mysql怎么办
网页网址:http://bjjierui.cn/article/ghppoh.html

其他资讯