WARNING: inbound connection timed out (ORA-3136)連線超時問題
*時間:2009-03-010
*環境:AIX5.3 Oracle10g
*WARNING: inbound connection timed out (ORA-3136)連線超時問題
*/
1、alter_SID.log日誌:aaa
Mon Mar 9 02:18:40 2009
ksvcreate: Process(q002) creation failed
Mon Mar 9 02:32:29 2009
WARNING: inbound connection timed out (ORA-3136)
Mon Mar 9 02:33:02 2009
WARNING: inbound connection timed out (ORA-3136)
Mon Mar 9 02:33:19 2009
WARNING: inbound connection timed out (ORA-3136)
2、sqlnet.log日誌
Fatal NI connect error 12170.
VERSION INFORMATION:
TNS for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
TCP/IP NT Protocol Adapter for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for IBM/AIX RISC System/6000: Version 10.2.0.1.0 - Production
Time: 09-MAR-2009 02:32:29
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.171.4.201)(PORT=3663))
3、參考官方說明關於該警告的說明:
Note:465043.1
The "WARNING: inbound connection timed out (ORA-3136)" in the alert log indicates that the client was not able to complete it's authentication within the period of time specified by parameter SQLNET.INBOUND_CONNECT_TIMEOUT.
You may also witness ORA-12170 without timeout error on the database sqlnet.log file.
This entry would also have the clinet address which failed to get authenticated. Some applications or JDBC thin driver applications may not have these details.
可能的原因:
1.網路攻擊,例如半開連線攻擊
Server gets a connection request from a malicious client which is not supposed to connect to the database ,
in which case the error thrown is the correct behavior. You can get the client address for which the error was thrown via sqlnet log file.
2.Client在default 60秒內沒有完成認證
The server receives a valid client connection request but the client takes a long time to authenticate more than the default 60 seconds.
3.DB負載太高
The DB server is heavily loaded due to which it cannot finish the client logon within the timeout specified.
WARNING: inbound connection timed out (ORA-3136)
這個錯誤跟 監聽的一個引數有關:SQLNET.INBOUND_CONNECT_TIMEOUT
這個引數從9i開始引入,指定了客戶端連線伺服器並且提供認證資訊的超時時間,如果超過這個時間客戶端沒有提供正確的認證資訊,伺服器會自動中止該連線請求,同時會記錄試圖連線的IP地址和ORA-12170: TNS:Connect timeout occurred錯誤。
這個引數的引入,主要是防止DoS攻擊,惡意攻擊者可以透過不停的開啟大量連線請求,佔用伺服器的連線資源,使得伺服器無法提供有效服務。在10.2.0.1起,該引數預設設定為60秒
但是,這個引數的引入也導致了一些相關的bug。比如:
Bug 5594769 - REMOTE SESSION DROPPED WHEN LOCAL SESSION SHARED AND INBOUND_CONNECT_TIMEOUT SET
Bug 5249163 - CONNECTS REFUSED BY TNSLSNR EVERY 49 DAYS FOR INBOUND_CONNECT_TIMEOUT SECONDS
該引數可以透過設定為0來禁用,在服務媏
設定sqlnet.ora檔案:SQLNET.INBOUND_CONNECT_TIMEOUT=0
設定listener.ora檔案: INBOUND_CONNECT_TIMEOUT_listenername=0
然後reload或者重啟監聽
這是由於連線超時所產生的問題,在10.2.0.1.0版本中sqlnet.inbound_connect_timeout引數預設為60秒,即如果連線時間超過60秒則提示超時,而在其他版本中這兩個引數預設為0,即無限制。
如何操作:
一、檢視中listener.ora中的inbound_connect_timeout引數值
1、進入lsnrctl,
LHXXDBS01:oraoms> lsnrctl
2、檢視inbound_connect_timeout引數:
LSNRCTL> show inbound_connect_time
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=LHXXDBS)(PORT=1568)))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully
如果inbound_connect_timeout引數值不為0,則可以修改為0
修改:
LSNRCTL> set inbound_connect_time 0
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=LHXXDBS)(PORT=1568)))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully
二、修改/oracle/oms/102_64/network/admin/sqlnet.ora
Vi sqlnet.ora
SQLNET.INBOUND_CONNECT_TIMEOUT = 0
保持退出 wq!
三、重新載入listener
LSNRCTL> reload
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=LHXXDBS)(PORT=1568)))
The command completed successfully
第二天觀察沒有出現WARNING: inbound connection timed out (ORA-3136)連線超時的現象了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28389881/viewspace-1446195/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- WARNING: inbound connection timed out (ORA-3136)錯誤分析
- ORA-3136錯誤分析——WARNING Inbound Connection Timed Out
- 【Oracle】 inbound connection timed out (ORA-3136)Oracle
- Oracle10g R2 RAC: WARNING: inbound connection timed out (ORA-3136)Oracle
- Feign,HTTP連線超時問題SocketTimeoutException: Read timed outHTTPException
- 解決代理連線超時問題
- GoldenGate Pump Porcess: TCP/IP error 110 (Connection timed out)的問題解決GoTCPError
- .net 資料庫連線池超時問題資料庫
- 關於在執行java連線MongoDB時遇到的連線超時問題JavaMongoDB
- Android-問題-obtainBuffer timed out (is the CPU pegged?)AndroidAI
- Putty或MobaXTerm無法連線VMware虛擬機器 報Network error: Connection timed out的解決方案虛擬機Error
- 執行systemctl status ssh返回“Failed to get properties: Connection timed out”AI
- oracle連線超時自動斷開問題[轉]Oracle
- oozie.action.hadoop.LauncherException: IO error Connection timed out: no further informationHadoopExceptionErrorORM
- Springboot2.x整合lettuce連線redis叢集報超時異常Command timed out after 6 second(s)Spring BootRedis
- SecureCRT 超時自動斷開連線問題解決方法Securecrt
- adstrtal.sh報超時錯誤 ERROR : Timed out( 100000 ): Interrupted ExceptionErrorException
- 解決Redis/Codis Connection with master lost(複製超時)問題RedisAST
- 以太坊公鏈節點連線節點超時問題排查
- PHPSOAPphp調取soap的webservice連線超時的問題PHPAPPWeb
- weblogic連線池重置(Connection reset)問題解決方案Web
- CM agent 傳送heartbeat給CM server 不斷髮生 connection refused:timed outServer
- Connection (建立連線)
- win下oracle監聽日誌過大造成的連線超時問題Oracle
- PostgreSQL 連線 超時異常SQL
- python 連線 mongo 資料庫連線超時PythonGo資料庫
- 記錄一個HttpClient超時連線配置不生效的問題排查過程HTTPclient
- commons-net-3.3 ftpClient上傳檔案報錯java.net.socketexception: connection timed outFTPclientJavaException
- 網路超時控制 + 指數補償法超時連線
- TNS-12170 連線超時
- ssh連線超時的解決
- Redis連線超時排查實錄Redis
- ora-3136問題的解決
- ORA-12170:TNS:連線超時-Windows上Oracle開放防火牆埠問題WindowsOracle防火牆
- [Clickhouse] Clickhouse 報SQLException : Read timed outSQLException
- sqlnet.log error - Operation timed outSQLError
- SAP Connection inbound郵件接收處理機制
- django 內建server 外網不能訪問, 報連線超時DjangoServer