两台oracle数据库服务器A,B, 在A服务器上通过sqlplus 可以连接到B服务器,但是反过来在B服务器上连接A服务器就连接不上,报错:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 检查半天也不晓得哪里配置有问题,这是什么原因呢?希望高手指点一二

解决方案 »

  1.   

    配置了,tnsping 都没问题的,显示都是正常
      

  2.   

    引用错了。。在B上tnsping A都显示正常的
      

  3.   

    请楼主参考下面的解决办法。如果还没有解决再告诉我们,再想办法http://www.blogjava.net/freeman1984/archive/2011/04/15/348350.html
    http://www.cnblogs.com/xufung/archive/2007/03/30/693731.html
      

  4.   

    这个方法已经使用了,结果还是一样。 B服务器的listener.ora如下:
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
          (PROGRAM = extproc)
        )
       (SID_DESC =
        (GLOBAL_DBNAME = weboa)
        (ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
        (SID_NAME = weboa)
        )
      )LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = OABG)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
        )
      )
      

  5.   

    其实我这边有一台oracle数据库服务器C,A可以正常连接B、C, 反过来B、C都连接不上A;
    B、C之间又可以正常连接。 三台机器都在同一网段,这样问题是不是出在A上呢?
      

  6.   

    A机器上,oracle的sqlnet.ora中是不是对访问的Ip有限制。
      

  7.   

    1. 检查 数据库、监听是否正常
    2. 检查 tnsname.ora 中是否配置正确
          如果上面都正常,那再试着改一下 tnsname.ora 中
                 host改成IP,或者,SID 改成 SERVER_NAME
      

  8.   

    A、B、C中sqlnet.ora配置都是一样的
      

  9.   

    A机器的tnsnames.ora配置:
    ORA10G =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.198)(PORT = 1521))
        )
        (CONNECT_DATA =
         (SERVER = DEDICATED)
          (SERVICE_NAME = weboa)
        )
      )WEBOA =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.141)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = weboa)
        )
      )
      

  10.   

    tnsnames.ora、 sqlnet.ora 、listener.ora的配置反复检查好几遍了,应该不是这里的问题吧
      

  11.   

    楼主麻烦把 日志贴出来吧。服务端的 监听状态、以及 客户端 sqlplus 的命令和完整的报错信息。还有,tnsping 的情况。
      

  12.   

    经过数据库A的数次重启,什么配置都没有做过修改,现在竟然可以正常连接了!!!坑爹啊,这是。。晕了
    最后的一次重启过程, 关闭数据库时 shutdown了, 忘了输immediate,结果数据库就卡死半天都没关闭掉,无奈在服务里重启oracle相关的几个服务后,再startup数据库,然后就一切都美好了,当时就这样。。 不管你信不信,反正我信了