More on tns configurations in the context of Dataguard

  • From: Charles Schultz <sacrophyte@xxxxxxxxx>
  • To: ORACLE-L <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 2 Apr 2010 11:18:00 -0500

Good day, list,

This references some past email exchanges:

   - Carel-Jan Engel: Data Guard (
   //www.freelists.org/post/oracle-l/Data-Guard,2)
   - Jeremy Schneider: TAF and node failover non RAC oracle 10.2 (
   
//www.freelists.org/post/oracle-l/TAF-and-node-failover-non-RAC-oracle-102,18
   )
   - Me: Trying to wrap my head around TAF (
   //www.freelists.org/post/oracle-l/Trying-to-wrap-my-head-around-TAF,4
   )



Also in reference to:

   - How to configure Client Failover after Data Guard Switchover or
   Failover (Doc ID 316740.1)
   - Failover Connections for Data Guard Error with ORA-1033 (Doc ID
   461874.1)


If I read this all correctly, the favored method to have a single tns
connection string point to "both" (assuming two) databases in a DG
configuration, you need:

   - the tns string with multiple addresses
   - properly defined service names
   - a trigger that turns the service off in the standby database



So this brings up a question. Let's say, for example, you have 10 services.
That means you have to hardcode each of those services in the manage_OCI
trigger (from Doc ID 461874.1)? And if you insert/update/delete any of those
service names, you have to make appropriate changes to the trigger? Is that
not kind of a pain?

Here is where I am going with this. Does not Oracle provide a way to disable
*all* services that are registered to the listener when the database is
started as a standby? One could add a simple loop in the documented
manage_OCI trigger to stop each entry in SERVICE_NAMES, but that seems like
a hack. But maybe it is the only hack available to us at this point in time?
The Oracle online documentation does not spell out any options for ALL
services (too bad DBMS_SERVICE.STOP_SERVICE.SERVICE_NAME cannot be null
*grin*). I realize you could do some magic with local_listener, but that
seems to overly complicate matters, IMO.



-- 
Charles Schultz

Other related posts: