数据库连接是正常的,执行select sysdate from dual@mdsp_link;能够返回日期。但是有一些同步数据的存储过程在用scheduler自动执行时报“无法解析指定的连接标识符”错误。在手动执行存储过程没有报错。runlog

解决方案 »

  1.   

    无图无真相Database link:无法解析指定的连接标识符
    2009-11-23 15:21
    1.创建database linkcreate database link ORCL.US.ORACLE.COM connect to dhscdb identified by dhscdbdtxx using 'dhscdb'2.访问database link中的表select * from [email protected]提示:错误 ORA-12154: TNS: 无法解析指定的连接标识符。说明:我的机子上同时安装了oracle服务端和客户端。我设置了客户端的tnsnames.ora文件。没有设置服务端的。这样以来我可以用PL/SQL Developer正常访问远程机器dhscdb。解决办法:将服务端的tnsnames.ora中添加dhscdb的服务命名:DHSCDB =
    (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.119.47.150)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = dhscdb)
        )
    )就可以正常访问了。
      

  2.   

    db_link用的tnsname是数据库服务器上的
    你在你自己的机器(客户端)建立的tnsname,服务器用不了
      

  3.   

    我刚才查看了一下,服务器上也配置了tnsnames.ora
      

  4.   


    MDSP =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.10.30)(PORT = 1521))
        (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.10.31)(PORT = 1521))
        (LOAD_BALANCE = yes)
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = mdsp)
        )
      )
      

  5.   

    你用的RAC的环境,你确定每个节点上的TNS都配置了么,请仔细检查
    看的情况应该是单机升级为RAC的
      

  6.   

    如果是RAC的话,如果有一个节点没有配置TNS的话,是不是就会导致上面这种情况。
      

  7.   

    我刚才检查了下,的确是有一个节点,没有配置TNS。