暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
知识点 | 如何设置OracleDCD以避免连接会话被防火墙强制断开.doc
841
4页
3次
2021-04-12
5墨值下载
主题:
Oracle
设置
DCD
以避免连接会话被防火墙强制断开
防火墙配置为限制
TCP
连接,可以保持空闲的时间而发生的连接空闲超时问题。
但在客户端
-
服务器环境中,防火墙经常会突然终止看起来空闲的连接。
表现在数据库层面,会导致超时错误,比如
TNS-12535
TNS-12170
ORA-3135
等。
Alert Log Errors: 12170 TNS-12535/TNS-00505: Operation Timed Out
怎么破?
既然是防火墙引起的,先看下防火墙的作用。
防火墙
(FW)
是当今常见的网络环境设置,可以保护网络环境。
TCP
FW
TCP
接的关闭情况,释放为记录打开的连接而分配的资源。对于每个端点对,防火墙还必须分
配一些资源
(
可能很小
)
正常情况下,客户端或服务器通常通过发送
TCP FIN
类型数据包来关闭套接字关闭。
但,客户端和服务器之间的通信突然终止而没有发送
FIN
包来正确地关闭端点,这种情
也很常见;如:当客户端或服务器崩溃、断电或网络错误导致无法向另一端发送
FIN
包时。
使
TCP
end-
points
)是否仍然处于活动状态。不限时长的保持端口开放对服务器来说是一种安全威胁
因此,防火墙的作用就是对那些在预定义时间内处于空闲状态的连接强制关闭。
FW
最初被设计用来保护应用服务器、网络、保护客户端
/
服务器连接。通常
FW
的超时设
时长
1
小时
(
于大
FW, 1
时是
)
;但
FW
不仅户端
间,也存在于不同的应用服务器
(
内网、
DMZ
)
和数据库服务器之间。因此,服务器之间
1
J2EE
使
JDBC
将第一个可用连接返回给请求者,因此池列表的第一个连接最有可能处于活动状最后
使
HTTP
服务器建立连接,或者从
mod_plsql
建立
SQL
连接,或者从
mod_oc4j
建立
AJP
接。
数据库属于“被动式”服务(
"passive listeners"
),侦听器在服务端只是等待来自客户
端的命令请求;后端数据库服务器进程从套接字中读取并查找要执行的新
SQL
语句,在响
应请求后,重新返回到监听被动状态。
那么,如何解决连接空闲超时?
这里可化“被动”为“主动”,让数据库没隔一段时间主动嗅探下当前是否有空闲超时连接,如
有,进行会话中断处,释放会话资源。
具体怎么
Oracle
给出一种解决方案:使
DCD(
dead connection detection
)
来确定通信
否可释放。
简单地说,在
$ORACLE_HOME/network/admin/sqlnet.ora
中设置
SQLNET.EXPIRE_TIME=10
Oracle
10
向客户发送一个
10
的探
空包
;如这个包没有被确认,连接将被关闭,关的资
源将被释放。
设置
DCD
处:
1.
SQLNET.EXPIRE_TIME
小于
FW
连接的空闲超时时间,那么防火墙
*
可能
*
认为这个
包是活动的,空闲超时
(
防火墙
)
永远不会发生,客户端和服务器进程是活的。
2.
SQLNET.EXPIRE_TIME
值设置
FW
空闲限制,那么,一
FW
断会话发生,
RDBMS
就会知道并关闭连接。
Oracle
官方建议:当连接来自另一个应用程序服务器时,建议使用第一种情况,而第
The rst case is recommended when the
connection comes from another application server , and the second
makes sense for client applications.
注意
:
情况墙和火墙固件
DCD
流量
因为
DCD
发送的包实际空包。因此,
DCD
可能不会使已经
DCD
设置,防火墙
/
交换机仍可能会终止在监控期间空闲的
TCP
套接字。
此情况下,应增加防火墙超时时间,或在设置用程序空闲时间超过防火配置的空
闲时间。
SQLNET.EXPIRE_TIME
Oralce
(Doc ID
395505.1)
法如下:
1
Oracle Sqlnet
客户端跟踪
2
Oracle Sqlnet
服务端跟踪
3:
网络嗅探式(
Sniffer Trace
4
系统级跟踪Strace or System level trace
详细步骤,请官方文档进行作。
参考【
4
】提供一种简单检测方式,
tcpdump 来从网络层面检测数据库传递情况
注意:生环境一有多,使用 ip a 命令找到正在使用的那进行检测
[oracle@ayaudit network]$ ip a
... ...
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
link/ether 00:50:56:ab:0a:87 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.123/24 brd XX.XX.XX.XX scope global noprefixroute ens192
of 4
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜