ssh跳转plsql

场景描述:
    有一台拥有公网IP的服务器,提供SSH服务,端口22,可远程连接;该服务器拥有多网卡,配有内网IP;
    从数据安全角度内网的Oracle未提供公网服务,但SSH服务器所在内网端可以访问数据库服务器;
    
     现在需要访问数据库服务器,进行数据操作,首先想到的方法:在SSH服务器上安装Oracle客户端,使用SQL*PLUS访问数据库;或者使用一些第三方数据库管理客户端;
    无论是使用Oracle客户端还是第三方数据库管理端,都涉及到软件的安装、配置,这都有可能对现有机器环境造成影响,而且还不一定有在SSH服务器上安装软件的权限,怎么办?
     其实很多SSH客户端都提供端口转发功能,比如SecureCRT,就可以这么操作:
     1,先用SecureCRT 建立一个会话,选择“选项” 中的 “会话选项”-> "连接"->“端口转发”
        选择 【添加 】:
         【名称】端口转发  
         【手工选择允许访问的本地 IP地址】 127.0.0.1
         【端口】1521    (找一个本机并未使用的端口)
                 【远程】 ->【目的主机不同于SSH服务】填数据库的IP 地址
                                   【端口】 填Oracle的监听端口 如1521
 
2,现在就可以用SecureCRT 连接刚才新建的会话了,连接上SSH 
 
3,修改本机的ORACLE TNSNAMES.ORA,添加配置:
TNS_NAME =
  (DESCRIPTION =
    (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
   其中SERVICE_NAME 为数据库服务监听的真实SERVER_NAME
   打开PL/SQL进行登录测试,成功!
   整个流程:
      PL/SQL--->127.0.0.1:1521---ssh -->SSH服务器---转发--->数据库服务器:1521
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值