有A和B两台ORACLE服务器,操作系统为RH AS4
A服务器: IP:10.1.1.10,SID:ora01
B服务器: IP:10.1.2.18,SID:ora02
A和B在同一个城域网,能互相访问,在B所在的局域网中有一个Internet路由器配置IP为219.18.8.8,并映射内网B服务器的端口1521.C客户端可通过Internet访问219.18.8.8:1521访问到B服务器的ORACLE,请问如何配置能让C访问到A服务器?
据说可通过配置B服务器的ORACLE网络服务,不知如何配置?谢谢.

解决方案 »

  1.   

    通过数据链可以实现楼主的需求。
    在B服务器端SID:ora02建立数据链指向A服务器SID:ora01
    然后通过该数据链可以对A服务器中的数据库进行操作
      

  2.   

    我试过chqchq的做法,即是在B服务器中通过create database link来建立一个数据库连接,但是有两个问题:
    1.访问数据表时需要加后缀,如select * from tablename@linkename这种方式,这样必须修改应用程序,比较麻烦;
    2.不能返回和修改BLOB字段,返回BLOB字段会出现ORA-22992: cannot use LOB locators selected from remote tables错误,且没有很好的解决方案
      

  3.   

    第一个问题,你建个synonym就解决了;
    第二个问题,在:http://blog.csdn.net/hailang99/archive/2007/09/20/1793405.aspx
    有方法,对于blob这个方法也可行。