I'm trying to add two new services to an existing 2 node 11Gr2 RAC cluster. I want to use them for application partitioning. I want some apps to always connect to node 1 and others to always connect to node 2, unless a node is down in which case I want them all to go to the surviving node.
I added both new service names to both instances with - ALTER SYSTEM SET SERVICE_NAMES ='...,service1,service2' scope=both sid='*';
I created 2 new service names with - srvctl add service -d dbname -s servicename -r "InstName1" -a "InstName2". For the 2nd new service I reversed preferredInstName and otherInstName.
I enabled the services with - srvctl enable service -d dbname -s "service1,service2".
I started the services with - srvctl start service -d dbname -s "service1,service2".
I tested the new service names with - sqlplus user/password@scanName:1521/serviceN (where N is 1 or 2).
My problem is that it's not always connecting me to the preferred instance. Sometimes it does and sometimes it doesn't. What did I do wrong?
I also noticed that if I run - srvctl status service -d dbname - it does not contain the last line that I usually see which says "Service is enabled on instances:"
If I run - srvctl status service -d dbname -s service1 - it only shows it running on one instance (the preferred one). Sam thing with service2.