溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫connetion reset ora 3136錯誤分析

發(fā)布時間:2021-11-11 10:49:38 來源:億速云 閱讀:523 作者:iii 欄目:關系型數據庫

這篇文章主要講解了“數據庫connetion reset  ora 3136錯誤分析”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“數據庫connetion reset  ora 3136錯誤分析”吧!

      一、錯誤描述:這幾天平臺上線,支付系統(tǒng)要開始部署到生產環(huán)境。系統(tǒng)環(huán)境:linux centos 7.5 oracle11.2.0.4  java1.8。這套java系統(tǒng)總共有90個服務,每個服務有2個數據庫連接,一起啟動,分布在90臺虛擬機中。發(fā)現有些機器連接數據的時候,卡住,等待一段時間,可能是1分鐘,可能是2分鐘,可能是10分鐘,或者半個小時,然后日志打印出如下錯誤信息:

java.sql.SQLRecoverableException: IO Error: Connection reset
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:533)
        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:557)
        at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:233)
        at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:29)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:556)
        at java.sql.DriverManager.getConnection(DriverManager.java:579)
        at java.sql.DriverManager.getConnection(DriverManager.java:221)
        at test.jdbc.Main(Test.java:120)
Caused by: java.net.SocketException: Connection reset
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
        at oracle.net.ns.DataPacket.send(DataPacket.java:248)
        at oracle.net.ns.NetOutputStream.flush(NetOutputStream.java:227)
        at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:309)
        at oracle.net.ns.NetInputStream.read(NetInputStream.java:257)
        at oracle.net.ns.NetInputStream.read(NetInputStream.java:182)
        at oracle.net.ns.NetInputStream.read(NetInputStream.java:99)
        at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:121)
        at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:77)
        at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1173)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:309)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:200)
        at oracle.jdbc.driver.T4CTTIoauthenticate.doOSESSKEY(T4CTTIoauthenticate.java:404)
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:430)
        ... 35 more

查看oracle的日志,發(fā)現如下錯誤:

Fatal NI connect error 12170.
  VERSION INFORMATION:
	TNS for Linux: Version 11.2.0.4.0 - Production
	Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
	TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
  Time: 17-SEP-2018 13:54:01
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12535
    
TNS-12535: TNS:operation timed out
    ns secondary err code: 12606
    nt main err code: 0
    nt secondary err code: 0
    nt OS err code: 0
  Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=10.14.254.99)(PORT=51492))
WARNING: inbound connection timed out (ORA-3136)

偶爾還會有一兩臺機器發(fā)起大量的數據庫空連接請求。我在oracle的連接登錄日志dba_audit_trail有如下統(tǒng)計:

數據庫登錄報錯:null password given; logon denied:

數據庫connetion reset  ora 3136錯誤分析

二、這2個問題最難是,很難追蹤:問題時有時無,而且90個機器請求數據庫,有些機器能迅速連接上,有些報超時。

到目前為止,搞清楚我說的問題了嗎?目前有兩個問題:1.java應用連接啟動報超時,connection reset ,oracle 日志報 WARNING: inbound connection timed out (ORA-3136)。2 .發(fā)起大量數據庫連接空請求問題 null password given; logon denied . 其實這2個問題發(fā)生最難追蹤的是:錯誤現象時有時無。比如問題1,連接超時,啟動5遍,可能第6遍連接就能立即連接上數據庫。問題2,不是每次啟動,都是大規(guī)模的發(fā)起空連接請求錯誤。而是有時候。

感謝各位的閱讀,以上就是“數據庫connetion reset  ora 3136錯誤分析”的內容了,經過本文的學習后,相信大家對數據庫connetion reset  ora 3136錯誤分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI