Azure データベースサーバーを使用する LAC/E で、データベース接続終了の ORA-03135 が見られる - WKB264945
Article number: 264945To English version
症状
- 65 分後に LAC/E にログインすると、「Database connection terminated ORA-03135」(データベースの接続が切断されました ORA-03135)が表示される
- 取り込み時間が 65 分を超えると、バッファリングが見られます
- ORA-03135 が Citrix セッションに見られない
- 65 分未満の取り込み時間では、ORA-03135 もバッファリングも見られない
環境
- Empower 3.6.1(すべてのバージョンが影響を受ける可能性がある)
- Azure データベースサーバー
- Azure Citrix
- Azure 生データファイル共有
原因
Azure ポリシーにより、65 分間何も操作されないと、外部コンピューター (LAC/E) からのアイドル状態の TCP 接続が閉じられます。ORA-03135 は、Oracle の外部の何かが接続を閉じたことを示します。
解決策
2 つのオプションしかありません。データベースへの Empower SQL TCP 接続が、注入の開始時と終了時にのみアクティブになる。
- SQLNET.Expire_Time を設定します(Empower、複数のサイト、複数の LAC/E の頻繁なバッファリング - WKB229311 を参照)。ただし、空のパケットはドロップ/無視されることがあります。
- サーバーで TCP KeepAlive を設定します。これにより、無視されないオープンな接続に ACK パケットが送信されます。開いていますが、アイドル状態の接続が応答するはずです。
追加情報
Windows での既定の TCP 保持時間間隔は 2 時間です。他の設定がより低い値でタイムアウトするように設定されている場合、TCP keepalive は開始されません。
非アクティブな期間 (KeepAliveTime) の後、サーバーは指定された間隔 (KeepAliveInterval) で指定された最大数まで ACK パケットを送信します。
サーバーで設定する TCP KeepAlive レジストリーキー:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
* 時間の値はミリ秒単位で設定されます
- https://learn.microsoft.com/en-us/answers/questions/1115172/keepalivetime-registry-setting-for-windows-server
- https://www.alitajran.com/tcp-keepalivetime-exchange-server/
- https://en.wikipedia.org/wiki/Keepalive
id264945, EMP2LIC, EMP2OPT, EMP2SW, EMP3GC, EMP3LIC, EMP3OPT, EMP3SW, EMPGC, EMPGPC, EMPLIC, EMPOWER2, EMPOWER3, EMPSW, SUP, SUPNG, エンタープライズ