最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP中使用localhost連接Mysql不成功的解決方法

 更新時間:2014年08月20日 10:14:35   作者:瓊臺  
這篇文章主要介紹了PHP中使用localhost連接Mysql不成功的解決方法,但使用127.0.0.1則沒有問題,本文也可以說是對連接MySQL主機使用127.0.0.1與localhost的區(qū)別的講解,需要的朋友可以參考下

發(fā)現(xiàn)問題

昨天在幫同事編譯安裝Linux環(huán)境時,遇到一個問題:
WEB服務器是apache,數(shù)據(jù)庫是MySQL。

于是寫了一個測試連接數(shù)據(jù)庫的PHP頁面:

復制代碼 代碼如下:
$mysql = mysql_connect('localhost','root','');

打開 http://localhost/test.php 測試

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

檢查環(huán)境正常

以為是數(shù)據(jù)庫沒有啟動,于是查看一下進程,MySQL在進程里,重啟了一下MySQL.

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

直接使用/usr/local/php5/bin/php /web/test.php執(zhí)行可以連上數(shù)據(jù)庫
apache也重啟了,一樣無效

疑點:為何網(wǎng)頁執(zhí)行失敗,命令執(zhí)行卻成功

這下就郁悶了,使用php命令直接執(zhí)行就成功,通過網(wǎng)頁執(zhí)行就失敗。難道是apache導致?網(wǎng)上搜索了大堆資料也沒找到解決方案,重新編譯安裝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連接數(shù)據(jù)庫時,主機填寫localhost與其它的區(qū)別閱讀了大量資料,最后得知:

當主機填寫為localhost時mysql會采用 unix domain socket連接
當主機填寫為127.0.0.1時mysql會采用tcp方式連接
這是linux套接字網(wǎng)絡的特性,win平臺不會有這個問題

解決方法

在my.cnf的[mysql]區(qū)段里添加

復制代碼 代碼如下:
protocol=tcp

保存重啟MySQL,問題解決!

相關文章

最新評論

吉林市| 乌苏市| 万全县| 突泉县| 澳门| 行唐县| 兴隆县| 武邑县| 香格里拉县| 乌鲁木齐县| 祥云县| 中牟县| 张家口市| 广西| 黔西县| 百色市| 防城港市| 英吉沙县| 蒙自县| 安丘市| 得荣县| 阿拉尔市| 吉木萨尔县| 哈密市| 肇源县| 枣强县| 苗栗市| 桓台县| 蕲春县| 东乌珠穆沁旗| 上栗县| 文昌市| 阿克苏市| 城口县| 安顺市| 梁山县| 新田县| 东莞市| 北辰区| 三都| 天全县|