![](/img/trans.png)
[英]database error : The TCP/IP connection to the host has failed. java.net.BindException: Address already in use: connect
[英]The TCP/IP connection to the host has failed. java.net.BindException: Address already in use: connect Driver
我們長期部署了一個應用程序。 它到目前為止工作正常。 突然,當應用程序嘗試連接數據庫時,我們今天收到以下錯誤。 它正在發生和開啟。 有時候可以連接。 最經常低於錯誤。原因是什么。 請建議我。 提前致謝。
錯誤:-
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host has failed. java.net.BindException: Address already in use: connect
Driver name=com.microsoft.sqlserver.jdbc.SQLServerDriver
com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host has failed. java.net.BindException: Address already in use: connect
你已經用完了本地端口。 你有一個連接泄漏,或者你沒有使用連接池,你應該。 檢查netstat -anp TCP
。 您將在ESTABLISHED狀態下看到數以萬億計的連接到同一目標,即MS SQL Server。
已經使用的地址意味着本地端沒有足夠的端口可用於創建連接。 如果檢查網絡統計數據,您會看到很多條目。 假設它是windows,對於獲取列表的確切方式,請檢查平台文檔。 要了解該問題,您還可以閱讀:
http://khanna111.com/articles/TCPAAIU.html
請注意,該頁面上的前兩位數字是混亂的。 還有TIME_WAIT階段的解釋。
原因是,如果您只有一個應用程序正在運行jdbc,則可能的原因可能是正在創建與數據庫服務器的TCP連接,並且未關閉或創建和關閉連接的速率大於導致這個問題。 如果您還沒有連接池,則需要在任何情況下調查連接池。 如果同一主機上有其他應用程序處理網絡流量,那么您還需要查看這些應用程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.