ORA-12154: TNS:could not resolve the connect identifier specified
Cause: A connection to a database or other service was requested using a connect identifier, and the connect identifier specified could not be resolved into a connect descriptor using one of the naming methods configured. For example, if the type of connect identifier used was a net service name then the net service name could not be found in a naming method repository, or the repository could not be located or reached.
Action:
- If you are using local naming (TNSNAMES.ORA file):
- Make sure that "TNSNAMES" is listed as one of the values of the NAMES.DIRECTORY_PATH parameter in the Oracle Net profile (SQLNET.ORA)
- Verify that a TNSNAMES.ORA file exists and is in the proper directory and is accessible.
- Check that the net service name used as the connect identifier exists in the TNSNAMES.ORA file.
- Make sure there are no syntax errors anywhere in the TNSNAMES.ORA file. Look for unmatched parentheses or stray characters. Errors in a TNSNAMES.ORA file may make it unusable.
9-2 Oracle Database Error Messages
- If you are using directory naming:
- Verify that "LDAP" is listed as one of the values of the NAMES.DIRETORY_PATH parameter in the Oracle Net profile (SQLNET.ORA).
- Verify that the LDAP directory server is up and that it is accessible.
- Verify that the net service name or database name used as the connect identifier is configured in the directory.
- Verify that the default context being used is correct by specifying a fully qualified net service name or a full LDAP DN as the connect identifier
- If you are using easy connect naming:
- Verify that "EZCONNECT" is listed as one of the values of the NAMES.DIRETORY_PATH parameter in the Oracle Net profile (SQLNET.ORA).
- Make sure the host, port and service name specified are correct.
- Try enclosing the connect identifier in quote s. See the Oracle Net Services Administrators Guide or the Oracle operating system specific guide for more information on naming.
ORA-02063: preceding stringstring from stringstring
Cause: an Oracle error was received from a remote database link.
Action: refer to the preceding error message(s)

解决方案 »

  1.   

    检查用到的dblink的连接串
    如果只是偶尔会失败,检查看看网络是否稳定
      

  2.   

    我们的服务器alert.log也经常会报。 因为用了数据链ora-03135 连接数去联系
    ora-02063 紧接着line (起自 link_xxx)
    应该是网络原因,有的时候数据链很久都无法返回结果,有的时候又很快。 
      

  3.   

    而且每次执行完查询我都立马断开连接,
    ================================
    why?不断开试试
      

  4.   

    很明显是网络问题可以ping看看
    oracle怎么可能一会给你权限查询视图,一会又不给权限。
    除非是人为给的权限
      

  5.   

    建立dblink时最好指定SID,否则可能造成链接漂移,曾经遇到过这样的问题,查询不稳定
      

  6.   

    “而且每次执行完查询我都立马断开连接”,是一个什么情况?
    依据楼主的描述,我有两点想法: 1  网络不稳定,造成了dblink断了  2 数据量太大了