首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
拉钩
V2EX  ›  Linux

应用连接 Oracle 数据库的是长连接,怎么在数据库服务器上断开所有访问 tcp 1525 端口的长连接?

  •  
  •   symb0l · 95 天前 · 970 次点击
    这是一个创建于 95 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景是工程要切库,在 DNS 服务器修改 A 记录的 IP 地址,然而切库,但应用连接 Oracle 数据库的是长连接,怎么在数据库服务器上断开所有访问 tcp 1525 端口的长连接?让应用连接上解析的新库 IP。 试了在原来的数据库上加防火墙 iptables -A INPUT -p tcp --dport 1525 -j REJECT 但是不能断开已经是建立连接的 TCP 连接,怎么破=。=

    8 回复  |  直到 2018-09-07 04:35:40 +08:00
        1
    opengps   95 天前
    直接加防火墙仅仅是禁止新的连接进来,确实不能断开已有连接,我曾经借助这个特点,远程 3389 端口连接了全公司的我的爬虫机器
    话说能否去客户端重连呢?或者直接关闭已停止接入新连接的数据库
        2
    symb0l   95 天前
    @opengps 客户端太多了 200 多个应用,动作太大。 关闭数据库也不好=。=有事务在进行的话,直接关会不会有问题....
        3
    wtks1   95 天前 via Android
    试试查询客户端对应的 pid,然后直接 kill 掉对应进程?
        4
    symb0l   95 天前
    @wtks1 这么暴力的么...这样其实也可以,但是刚好在往数据库写数据,会不会有问题.......
        5
    wackyjazz1   95 天前
    同 wtks1 查詢 v$session 表分析要 kill 哪個
        6
    winglight2016   95 天前
    想保留数据,那就要求大家都退出客户端吧,实在没法通知,半夜两点起床干活
        7
    raysonx   95 天前
    其实防火墙是可以阻断已建立的连接的,你没加对位置而已。
    INPUT chain 中那条类似于-m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 的规则就是放行已连接的数据包。你的拒绝规则肯定没加对或者在这条规则之下。
        8
    LGA1150   95 天前
    iptables -I INPUT -p tcp --dport 1525 -j REJECT --reject-with tcp-reset
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   972 人在线   最高记录 4019   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 18ms · UTC 23:16 · PVG 07:16 · LAX 15:16 · JFK 18:16
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1