不能打開到主機的連接, 在端口 1521: 連接失敗


今天啟動工程,突然提示無法連接遠程Oracle。我試着telnet Oracle服務器1521 端口,提示連接失敗。

 

D:\Documents and Settings\Administrator>telnet 10.201.70.68 1521

正在連接到10.201.70.68...不能打開到主機的連接, 在端口 1521: 連接失敗

 

Oracle服務器與本機都在局域網內,不存在網絡不通問題,怎么會無法連接。

檢查10.201.70.68並未啟動防火牆,可以ping通。

但發現直接在Oracle服務器上連接oracle也不能正常連接。

后發現為listener.ora導致,經過修改  \product\10.2.0\db_1\NETWORK\ADMIN\listener.ora 數據庫恢復正常。

 

再次telnet Oracle服務器的1521端口,依然連接失敗。

 

D:\Documents and Settings\Administrator>telnet 10.201.70.68 1521

正在連接到10.201.70.68...不能打開到主機的連接, 在端口 1521: 連接失敗

 

用命令查看當前端口情況netstat -a –n

C:\Documents and Settings\Administrator>netstat -a -n

 

Active Connections

 

  Proto  Local Address          Foreign Address        State

  TCP    0.0.0.0:23             0.0.0.0:0              LISTENING

  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING

  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING

  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1025           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1026           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1035           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1080           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1139           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1801           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:2103           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:2105           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:2107           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:3389           0.0.0.0:0              LISTENING

  TCP    10.201.70.68:139       0.0.0.0:0              LISTENING

  TCP    10.201.70.68:3389      10.201.70.75:53370     ESTABLISHED

  TCP    127.0.0.1:1142         0.0.0.0:0              LISTENING

  TCP    127.0.0.1:1521         0.0.0.0:0              LISTENING

  TCP    127.0.0.1:42424        0.0.0.0:0              LISTENING

  UDP    0.0.0.0:445            *:*

  UDP    0.0.0.0:1034           *:*

 

1521端口處於監聽狀態,但是從我本機還是無法Telnet服務器端口。

我試着telnet  1080端口,發現卻可以,唯一的區別就在於一個端口前是“0.0.0.0”,一個是“127.0.0.1”。為了驗證,我又telnet 1035/1026都可以通。

但是為什么呢,是不是就因為這個IP的原因呢,怎么才可以把這個“127.0.0.1”改為“0.0.0.0”。

1521是Oracle監聽端口,問題估計還是出在監聽本身。

我打開另一台也裝有Oracle且1521可以連接的機器,查看NETWORK\ADMIN\listener.ora文件,仔細對比兩個Oracle該文件的區別,發現正常的Oracle服務器上,listener.ora文件,如下這段HOST顯示的是機器名,而不能連接的是“localhost”。

LISTENER =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = lggsuper_pc)(PORT = 1521))

  )

 

我備份該文件后,將localhost 也改為本機名,重啟監聽。檢查數據庫從數據庫服務器本機連接正常。

然后再執行命令netstat -a –n查看,此時1521前面的IP已變為“0.0.0.0”。

C:\Documents and Settings\Administrator>netstat -a -n

 

Active Connections

 

  Proto  Local Address          Foreign Address        State

  TCP    0.0.0.0:23             0.0.0.0:0              LISTENING

  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING

  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING

  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1025           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1026           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1035           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1080           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1317           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1521           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:1801           0.0.0.0:0              LISTENING

  TCP    0.0.0.0:2103           0.0.0.0:0              LISTENING

  TCP    10.201.70.68:139       0.0.0.0:0              LISTENING

  TCP    127.0.0.1:1324         127.0.0.1:1521         TIME_WAIT

  TCP    127.0.0.1:42424        0.0.0.0:0              LISTENING

  UDP    0.0.0.0:445            *:*

  UDP    0.0.0.0:1034           *:*

  UDP    0.0.0.0:1044           *:*

看來成功的概率很高,然后我通過我電腦telnet Oracle服務器1521端口,果然成功。

問題解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM