We have a database service configured in LDAP (OID) to resolve to one of two sites, depending whether it is running on the primary or standby server. The connection details are in this format:
When sqlplus or TOAD get this connection string from LDAP, they connect just fine, trying the second server as expected. When SQL Developer does this (connection defined as an LDAP connection type) it works if the database is running from prodserver, but not drserver. During a recent DR exercise the connection failed in SQL Developer with "ORA-12514: TNS listener does not know of service requested in connect descriptor. "
In the Connection Details pane of the connection properties, It appears that SQL Developer is parsing out the first host from the connect string it receives from LDAP and using that, never trying the DR site. My workaround is to use a connection type of TNS and put the entire string above in the Connect Identifier field. This is not ideal, since I am bypassing LDAP, but it does work around this issue.
Am I interpreting the SQL Develoepr behavior correctly, and does this sound like the a bug (I'm running 3.2.20.09)?
Logged a bug:
Bug 17373236 - LDAP - DOES NOT REACH FAILOVER/LOADBALANCED SECOND ADDRESS
You can bypass this by using advanced url syntax:
You can use advanced url to use the syntax
There is thick/oci syntax as well(from an old post - requires additional oracle client install)
I found a related issue:.
Bug 14761950 - ADVANCED THIN URL FAILS WITH OCI CHECKBOX ON
Is this your issue:
with ldap entry with two host names (for failover):
-with oci switch on -> only tries first one
-with oci switch off (i.e. it uses thin) -> tries both
This would confirm the bugs are related, and provide you with a workaround.