ORA-12154 – TNS:could not resolve the connect identifier specified

1.) Texte aus oerr unter Linux

12154, 00000, „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.

//   – 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 marks.

//

//   See the Oracle Net Services Administrators Guide or the Oracle

//   operating system specific guide for more information on naming.

2.) Erklärung

Zu dem Connect Identifier kann keine gültige Connect Description gefunden werden. Es sind die Einträge in den beiden Dateien sqlnet.ora und tnsnames.ora zu prüfen.

3.) Lösungsvorschläge

1. Prüfen, ob die Einträge in diesen beiden Dateien syntaktisch korrekt sind.

2. Die Zugriffsmethoden in der Datei sqlnet.ora ermitteln. Ist die Zugriffsmethode TNS, so muss der passende Eintrag in der Datei tnsnames.ora gefunden und analysiert werden.

3. Verbindung zum Host prüfen mit ping

4. Verbindung zur Datenbank testen mit tnsping. Damit wird der gefundene Connect-String aufgelistet und getestet, ob die Verbindung funktioniert.