listen.ora 文件是我从其它服务器拷过去的,也不知道改对了没有, “ ########## " 那一行是有改动的     
--------------------------------------------------------------------------------------------------LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.103.111)(PORT = 1521))     ##########      
      )
    )
  )
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = e:\oracle\ora92)  ##########      
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = tg4msql)  ##########      
      (ORACLE_HOME = e:\oracle\ora92)  ##########      
      (SID_NAME = sql)  ##########      
    )
  )

解决方案 »

  1.   

    tnsName.ora 文件需要建两个侦听器名吗?
    -------------------------------------------------------------------------------------------------- 
    EXTPROC_CONNECTION_DATA =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
        )
        (CONNECT_DATA =
          (SID = PLSExtProc)
          (PRESENTATION = RO)
        )
      )local =
        (DESCRIPTION =
        (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.103.111)(PORT = 1521))
        )
        (CONNECT_DATA =
        (SID = sql)
        )
        (HS = OK)
              )sql =
        (DESCRIPTION =
        (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.127.245)(PORT = 1521))
        )
        (CONNECT_DATA =
        (SID = kk10)
        )
        (HS = OK)
              )
      

  2.   

    监听最好别拷过去手动改。你用netca命令来重建个监听。
      

  3.   

    确实重新配置侦听器就可以了,看来不能用我复制过去的ORA文件,现在创建好 DBLink 了,但是调用 SqlServer 数据表的时候,报错:“TNS: 无法处理服务”
      

  4.   

    SQL> SELECT * FROM PO_SALESORDER_HEADER@DB_SQL;
    SELECT * FROM PO_SALESORDER_HEADER@DB_SQL
                                       *
    ERROR 位于第 1 行:
    ORA-12154: TNS: 无法处理服务名
      

  5.   

    修改 tnsnames.ora 的工具都没有装(Net Easy Config 之类的),会不会是这个问题呢?通过tnsnames.ora, Sql Plus在连Oracle数据库服务器都可以了