DavidYahalom.com is an IT knowledgebase dedicated to the world of databses and RDBMS systems by David Yahalom. Here you'll find articles, views, news, tips and in-depth analysis about Oracle, DB2 LUW, Sql Server and MySql. I hope you'll enjoy your stay.
23rd
JUL
Intermittent ORA-12545 When Trying To Connect To RAC Database
Posted by David Yahalom under RAC, Oracle
Well, got another RAC tidbit for you today. I’ve been doing some very interesting RAC installations in the past few weeks and came across several “bugs” (or “random features” in Oracle-tongue
) I felt like sharing.
So, you have a brand new 10g RAC cluster installed and when you try to connect using OCI (probably JDBC thin as well) only to recieve intermittent ORA-12545 errors. The client will connect fine every other attempt or so.
This error happens when you enable server side load balancing but the client does not have domain address / DNS search function setup (or valid /etc/hosts file) so it cannot translate a hostname to a proper IP address.
The solution is simple, make sure that the client from which you are trying to connect is able to resolve all the hostnames in your RAC installation. Either via registering the nodes in a DNS server or by updateding the /etc/hosts file (remember, Windows also has an /etc/hosts file under <WINDOWS>\system32\drivers\etc\hosts).
I’ve seen many DBAs forget that for server-side LOB you need to be able to resolve each cluster node hostname from the client EVEN when you only use IPs in your TNSNAMES.ORA entries. Even without server-side LOB, it’s good practice to be able to resolve RAC hostnames from the client.
This isn’t actually a bug, it’s by-design and if you understand they way server-side LOB works in RAC you’ll see why the client has to be able to resolve RAC hostnames to IP addresses.
Reader's Comments
Leave a Reply
Post Meta
-
July 23, 2008 -
RAC, Oracle -
2 Comments
-
Comments Feed
DavidYahalom.com - Oracle, Databases, SQL, news, views, articles and in-depth analysis is powered by Wordpress. Designed by Free WordPress Themes.

Are you saying that there are times when database clients do not need to resolve DNS names? I always expect that some sort of name resolution is present on all database clients. If there’s a problem, it’s usually that DNS entries weren’t created or were created incorrectly.
Hi,
We’ve finally solved this behaviour following the metakink note: How To Configure Dispatchers For RAC Environment [ID 578524.1]
“Note: It is very important to use entire address string in order to configure dispatchers on RAC and host name used in it should be a VIP hostname, otherwise connection may suffer intermittent ORA-12545 errors. Refer metalink note >”
The solution was to set the parameter DISPATCHERS on every node of the cluster pointing to the node-vip as a connection string:
{noformat}
alter system set dispatchers=’(address=(protocol=tcp)(host=$HOSTNAME-vip)) (dispatchers=2)’ scope=both sid=’$ORACLE_SID’;
{noformat}
Regards,
Enric Moya