Re: DG Broker and service_names

  • From: Marcin Przepiorowski <pioro1@xxxxxxxxx>
  • To: Niall Litchfield <niall.litchfield@xxxxxxxxx>
  • Date: Fri, 2 May 2014 08:41:25 +0100

Hi,

This is interesting issue. Well I was always thinking that services are not
controlled by Broker
and we have to start it on database level using trigger or using GI.

I have test DG with 11.2.0.3 and 4 and will try to replicate your problem.

From some bugs description on MOS I know that Data Guard Broker is
restarting database using it database API and not GI. I'm wondering now if
this is same case for services.

regards,
Marcin



On Fri, May 2, 2014 at 6:26 AM, Niall Litchfield <niall.litchfield@xxxxxxxxx
> wrote:

> The services are there, but not enabled. Clearly we have a task to remove
> unwanted services, but I wouldn't have expected (and am pretty sure that
> this doesn't normally happen) the broker to start all services listed in
> dba_services regardless of enabled state.
>
>
> On Thu, May 1, 2014 at 11:19 PM, Ls Cheng <exriscer@xxxxxxxxx> wrote:
>
>> have you looked dba_services :-?
>>
>>
>>
>> On Thu, May 1, 2014 at 5:45 PM, Niall Litchfield <
>> niall.litchfield@xxxxxxxxx> wrote:
>>
>>> 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
>>>
>>
>>
>
>
> --
> Niall Litchfield
> Oracle DBA
> http://www.orawin.info
>



-- 
Marcin Przepiorowski
http://oracleprof.blogspot.com

Other related posts: