JDBC連接MYSQL異常 java.net.unknownhostexception:loaclhost的一些拓展

前言:昨天通過JDBC連接MYSQL,遇到了一個問題。

在這裏插入圖片描述
通過這個異常日誌,我就各種查找問題所在。大概其用了兩個多小時,不出意外,我沒有找到原因。
幸運的是,我找到了解決辦法,並且這個解決辦法可行。
將localhost換成127.0.0.1
事實上這應該不是我第一次遇到這種問題,我記得第一次遇到這個問題,應該是在我寫pythonweb時候,程序運行頁面一直是503狀態,那個時候是將127.0.0.1換成localhost。



先來區分幾個概念

  • localhost是指本地服務器,不聯網,不使用網卡,不受防火牆等限制。在host文件中localhost與127.0.0.1之間存在映射
  • 127.0.0.1是本機服務器,不聯網,需要使用網卡,受服務器限制。

localhost可以理解爲域名,那麼127.0.0.1是ip地址。域名需要解析爲ip地址。在登錄MYSQL,同樣提供localhost與127.0.0.1兩種方式,前者是通過socket去實現,我們平時mysql -u root -p即是這種方式。後者是通過port(端口3306)去實現的。但是講到這裏其實沒有解釋爲什麼上面需要把localhost改成127.0.0.1,今天去stackoverflow看,發現其實有很多人都有類似的經歷,當然不限於JDBC連接MYSQL。他們也只是將其歸結於疑難雜症。當然有些問題是可以解決的,只是還沒有被人發現解決的辦法。
說一個有意思的事情,今天我想去復現問題所在,去看看底層源碼,localhost居然又成功跑通!!!
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章