真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MySQL數(shù)據(jù)庫(kù)主機(jī)127.0.0.1與localhost區(qū)別是什么

這篇文章主要介紹MySQL數(shù)據(jù)庫(kù)主機(jī)127.0.0.1與localhost區(qū)別是什么,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

臨沂網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司從2013年開始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

可能有很多朋友都會(huì)碰到一個(gè)問題不知道127.0.0.1與localhost有什么區(qū)別,但是有的時(shí)間會(huì)發(fā)現(xiàn)使用localhost連接不了,但是改成127.0.0.1即可了連接了,那么他們會(huì)有什么區(qū)別呢,下面我給大家介紹。

  1. mysql -h 127.0.0.1 的時(shí)候,使用 TCP/IP 連接, mysql server 認(rèn)為該連接來自于127.0.0.1或者是"localhost.localdomain"

  2. mysql -h localhost 的時(shí)候,是 不使用TCP/IP 連接的,而使用 Unix socket ;此時(shí),mysql server則認(rèn)為該client是來自"localhost"

  3. mysql權(quán)限管理中的"localhost"有特定含義:

注意:雖然兩者連接方式有區(qū)別,但當(dāng)localhost 為默認(rèn)的127.0.0.1時(shí),兩種連接方式使用的權(quán)限記錄都是以下的1.row的記錄(因?yàn)橛涗浽谇?,先被匹配?/p>

*************************** 1. row *************************** 
Host: localhost 
User: root 
...... 
*************************** 2. row *************************** 
Host: 127.0.0.1 
User: root

證明:

shell> mysql -h 127.0.0.1 
mysql> status; 
Currentuser: root@localhost 
SSL: Notin use 
Current pager: stdout 
Using outfile: '' 
Using delimiter: ; 
Server version: 5.1.33-log Source distribution 
Protocol version: 10 
Connection: 127.0.0.1 via TCP/IP 
shell> mysql -h locahostmysql> status; 
Currentuser: root@localhost 
SSL: Notin use 
Current pager: stdout 
Using outfile: '' 
Using delimiter: ; 
Server version: 5.1.33-log Source distribution 
Protocol version: 10 
Connection: Localhost via UNIX socket

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

昨天在幫同事編譯安裝Linux環(huán)境時(shí),遇到一個(gè)問題:

Web服務(wù)器是apache,數(shù)據(jù)庫(kù)是MySQL。

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

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

打開 http://localhost/test.php 測(cè)試

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

檢查環(huán)境正常

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

使用 mysql -u root -p 可以進(jìn)入MySQL操作界面

直接使用/usr/local/php5/bin/php /web/test.php執(zhí)行可以連上數(shù)據(jù)庫(kù)

apache也重啟了,一樣無效

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

這下就郁悶了,使用php命令直接執(zhí)行就成功,通過網(wǎng)頁(yè)執(zhí)行就失敗。難道是apache導(dǎo)致?網(wǎng)上搜索了大堆資料也沒找到解決方案,重新編譯安裝apache問題依舊。

把localhost改成127.0.0.1成功

把localhost改成127.0.0.1后竟然連接成功了,開始陷入思考困局:localhost失敗127.0.0.1卻成功?

ping localhost 地址是127.0.0.1沒錯(cuò)

打開hosts加入

127.0.0.1 qttc

使用qttc當(dāng)主機(jī)連接也正常,唯獨(dú)就不認(rèn)localhost。

localhost連接方式不同導(dǎo)致

為了了解PHP連接數(shù)據(jù)庫(kù)時(shí),主機(jī)填寫localhost與其它的區(qū)別閱讀了大量資料,最后得知:

當(dāng)主機(jī)填寫為localhost時(shí)mysql會(huì)采用 unix domain socket連接

當(dāng)主機(jī)填寫為127.0.0.1時(shí)mysql會(huì)采用tcp方式連接

這是linux套接字網(wǎng)絡(luò)的特性,win平臺(tái)不會(huì)有這個(gè)問題

解決方法

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

protocol=tcp

以上是“MySQL數(shù)據(jù)庫(kù)主機(jī)127.0.0.1與localhost區(qū)別是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網(wǎng)站欄目:MySQL數(shù)據(jù)庫(kù)主機(jī)127.0.0.1與localhost區(qū)別是什么
文章鏈接:http://weahome.cn/article/googch.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部