WEB服務器是apache,數據庫是MySQL。于是寫了一個測試連接數據庫的PHP頁面:
復制代碼 代碼如下:$mysql = mysql_connect('localhost','root','');打開 http://loca " /> 韩国理伦片a级在线观看,国产一级成人毛片,91短视频版在线观看www

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

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

發現問題

昨天在幫同事編譯安裝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技術PHP中使用localhost連接Mysql不成功的解決方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产高清一区 | 黄色视视频 | 99在线在线视频免费视频观看 | 99久久精品国内 | 草草国产 | 欧美视频精品 | 日韩黄色毛片 | 怡红院久久 | 日韩午夜免费视频 | 欧美特黄特色aaa大片免费看 | 成人综合在线视频免费观看 | 亚洲综人网 | 伊色综合久久之综合久久 | 99视频在线精品免费 | 欧美日韩不卡码一区二区三区 | 激情文学小说区另类小说同性 | 久久91精品国产91久久小草 | 亚洲一区二区三区在线 | 久久国产自偷自偷免 | www.色播.com| 亚洲欧美成人综合久久久 | 色哟哟在线影院 | 久久亚洲一级毛片 | 欧美激情视频一区 | 女人毛片视频 | 日本久久精品免视看国产成人 | 日韩欧美一区黑人vs日本人 | 国产精品成人免费综合 | 免费一区二区三区视频狠狠 | 美国毛片亚洲社区在线观看 | 精品视频久久 | 国内精品亚洲 | 亚洲激情图片区 | 一菊综合网成人综合网 | 国产老妇xxxxxbb亚洲老妇 | 午夜国产| 久久91视频 | 国亚洲欧美日韩精品 | 一区二区美女视频 | 国内精品久久久久久久亚洲 | 午夜国产高清精品一区免费 |