ORA-03135は割と遭遇するネットワーク系のエラーです。今回は原因と回避方法を解説します。
ORA-03135エラー内容
oerrコマンドで確認すると以下の様に表示されます。
[oracle@ol77 ~]$ oerr ora 3135
03135, 00000, "connection lost contact"
// *Cause: 1) Server unexpectedly terminated or was forced to terminate.
// 2) Server timed out the connection.
// *Action: 1) Check if the server session was terminated.
// 2) Check if the timeout parameters are set properly in sqlnet.ora.
原因
- サーバーが予期せず終了したか、強制的に終了させられた
- サーバーが接続をタイムアウトした。
回避方法
- サーバーのセッションが終了したかどうかを確認してください
- sqlnet.oraでタイムアウトパラメータが正しく設定されているか確認してください。sqlnet.oraに正しく設定されているか確認してください
ORA-03135エラーは、Oracle Databaseへのリモート接続時にファイアウォールで接続が終了した場合によく発生するので、機器側のファイアウォールもしくはサーバ側のファイアウォールを確認してください。
また、その他エラーの回避策としては、sqlnet.oraファイルのexpire_timeパラメータの値を大きくすることを検討してください。
sql.net.oraのexpire_timeは、Oracle DatabaseサーバーからクライアントへのkeepAlive値(秒)になります。