DG Broker and service_names

  • From: Niall Litchfield <niall.litchfield@xxxxxxxxx>
  • To: ORACLE-L <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 1 May 2014 16:45:27 +0100

This will likely be an SR, but I've more confidence in this group for this
query.

<background>
We have some databases that have the following history.

single instance db (version 10 or so)
add service names for several applications.
split databases into several single instance (one per app). (11.1
timeframe) on different servers.
split leaves original db serving only 1 app
create RAC hosting platform 11.2
consolidate all databases back onto RAC platform, now several rac
databases.

Client connectivity is to dns alias/service name.
on the current rac platform each dns entry is an alias for the scan name.
each database has service_names for its apps only.

service names contain the "-" character and so cannot be cluster managed
services, but are set in service_names parameter and started with
dbms_service..

<background>

We had a recent infrastructure issue that meant the oldest db restarted
several times.When the issue was resolved we see in the alert.log several
ALTER SYSTEM SET SERVICE_NAMES='<LIST> statements, including for services
that had been split off into different databases. These then got registered
with scan, then new client requests got directed to the "least loaded"
instance which was the incorrect database.The right solution is to redefine
services as cluster managed services and have done with it. We are working
on that

My question however is where does DG broker get its list of service names
to start? We believe the broker to blame.. These services weren't in the
server parameter file (hence the alter system), they aren't in
'__dg_broker_service_name' ( a new discovery for me:) ) and strings on the
broker config file suggests they aren't there either.

We don't have startup triggers for these services either..


-- 
Niall Litchfield
Oracle DBA
http://www.orawin.info

Other related posts: