TNS Error when using DB link [message #608884] |
Wed, 26 February 2014 04:51 |
|
Jack14
Messages: 497 Registered: December 2011 Location: INDIA
|
Senior Member |
|
|
Hi,
When i try to create DB link between 2 databases which exist in same server , DB link creation was successful and was able to query data objects from source to target database.
create PUBLIC database link COMMON_USER connect to COMMON_USER identified by pwd using 'ORCL2';
SQL> select count(*) from COMMON_USER.REQUEST@COMMON_USER.COM;
COUNT(*)
----------
944035
Similarily when i try to create DB link between 2 database where source database exist in one server and target database exist in different server , DB link creation was successful but was unable to query data objects from source to target database and got error also.
create PUBLIC database link PROCESS_USER connect to PROCESS_USER identified by pwd using 'DEMO';
SQL> select count(*) from PROCESS_USER.CHANGELOG@PROCESS_USER.COM;
select count(*) from PROCESS_USER.CHANGELOG@PROCESS_USER.COM;
*
ERROR at line 1:
ORA-12154: TNS:could not resolve the connect identifier specified
Can you please help me to fix this error.
Regards,
[Updated on: Wed, 26 February 2014 05:00] Report message to a moderator
|
|
|
Re: TNS Error when using DB link [message #608886 is a reply to message #608884] |
Wed, 26 February 2014 05:16 |
ThomasG
Messages: 3212 Registered: April 2005 Location: Heilbronn, Germany
|
Senior Member |
|
|
Do you have a tnsname "DEMO" configured in you tnsnames.ora on the source server?
~ $ oerr ORA 12154
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.
|
|
|
|
|
|
Re: TNS Error when using DB link [message #608976 is a reply to message #608884] |
Thu, 27 February 2014 11:47 |
John Watson
Messages: 8964 Registered: January 2010 Location: Global Village
|
Senior Member |
|
|
I would start by cutting out the need for TNS name resolution. Embed the listening address, port, and service in the link:
orcla> create database link l1 connect to scott identified by tiger using '127.0.0.1:1521/orclz';
Database link created.
orcla> select * from global_name@l1;
GLOBAL_NAME
---------------------------------------------------------------------------------------------------
ORCLZ
orcla>
|
|
|