PHP中使用localhost连接Mysql不成功的解决方法


Posted in PHP onAugust 20, 2014

发现问题

昨天在帮同事编译安装Linux环境时,遇到一个问题:
WEB服务器是apache,数据库是MySQL。

于是写了一个测试连接数据库的PHP页面:

$mysql = mysql_connect('localhost','root','');

打开 http://localhost/test.php 测试

提示:Can't connect to local MySQL server through socket...

检查环境正常

以为是数据库没有启动,于是查看一下进程,MySQL在进程里,重启了一下MySQL.

使用mysql -u root -p 可以进入MySQL操作界面

直接使用/usr/local/php5/bin/php /web/test.php执行可以连上数据库
apache也重启了,一样无效

疑点:为何网页执行失败,命令执行却成功

这下就郁闷了,使用php命令直接执行就成功,通过网页执行就失败。难道是apache导致?网上搜索了大堆资料也没找到解决方案,重新编译安装apache问题依旧。

把localhost改成127.0.0.1成功

把localhost改成127.0.0.1后竟然连接成功了,开始陷入思考困局:localhost失败127.0.0.1却成功?

ping localhost 地址是127.0.0.1没错

打开hosts加入

127.0.0.1 qttc

使用qttc当主机连接也正常,唯独就不认localhost。

localhost连接方式不同导致

为了了解PHP连接数据库时,主机填写localhost与其它的区别阅读了大量资料,最后得知:

当主机填写为localhost时mysql会采用 unix domain socket连接
当主机填写为127.0.0.1时mysql会采用tcp方式连接
这是linux套接字网络的特性,win平台不会有这个问题

解决方法

在my.cnf的[mysql]区段里添加

protocol=tcp

保存重启MySQL,问题解决!
PHP 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
Ajax PHP简单入门教程代码
Apr 25 PHP
深入PHP curl参数的详解
Jun 17 PHP
php中文字符串截取方法实例总结
Sep 30 PHP
php json_encode()函数返回json数据实例代码
Oct 10 PHP
PHP实现无限极分类图文教程
Nov 25 PHP
php微信公众平台示例代码分析(二)
Dec 06 PHP
Json_decode 解析json字符串为NULL的解决方法(必看)
Feb 17 PHP
PHP进程通信基础之信号量与共享内存通信
Feb 19 PHP
ThinkPHP 模板引擎使用详解
May 07 PHP
php使用QueryList轻松采集js动态渲染页面方法
Sep 11 PHP
50个优秀经典PHP算法大集合 附源码
Aug 26 PHP
Smarty变量调节器失效的解决办法
Aug 20 #PHP
PHP编译安装中遇到的两个错误和解决方法
Aug 20 #PHP
PHP基于数组实现的分页函数实例
Aug 20 #PHP
PHP中读取照片exif信息的方法
Aug 20 #PHP
PHP函数eval()介绍和使用示例
Aug 20 #PHP
PHP命令行脚本接收传入参数的三种方式
Aug 20 #PHP
PHP中IP地址与整型数字互相转换详解
Aug 20 #PHP
You might like
php+mysqli数据库连接的两种方式
2015/01/28 PHP
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
解决laravel 5.1报错:No supported encrypter found的办法
2017/06/07 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
经典海量jQuery插件 大家可以收藏一下
2010/02/07 Javascript
JQuery onload、ready概念介绍及使用方法
2013/04/27 Javascript
jquery 列表双向选择器之改进版
2013/08/09 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
js焦点文字滚动效果代码分享
2015/08/25 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
vue.js入门(3)——详解组件通信
2016/12/02 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
vue的Virtual Dom实现snabbdom解密
2017/05/03 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
探究python中open函数的使用
2016/03/01 Python
利用Python开发微信支付的注意事项
2016/08/19 Python
Python正则捕获操作示例
2017/08/19 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
2019/06/18 Python
会走动的图形html5时钟示例
2014/04/27 HTML / CSS
Saks Fifth Avenue澳洲/亚太地区:萨克斯第五大道精品百货店
2019/06/09 全球购物
俄罗斯第一家多品牌在线奢侈品精品店:Aizel.ru
2020/09/06 全球购物
外语专业毕业生个人的自荐信
2013/11/19 职场文书
副科级后备干部考察材料
2014/05/15 职场文书
庆六一文艺汇演活动方案
2014/08/26 职场文书
小学校园广播稿(3篇)
2014/09/19 职场文书
2014年个人售房协议书
2014/10/30 职场文书
拾金不昧表扬稿大全
2015/05/05 职场文书
求职信如何撰写?
2019/05/22 职场文书
2019新员工试用期转正申请书3篇
2019/08/13 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
电频谱管理的原则是什么
2022/02/18 无线电
linux目录管理方法介绍
2022/06/01 Servers