Re: Failover to DG physical standby

From: Lyall Barbour <lyallbarbour_at_sanfranmail.com>
Date: Tue, 9 Sep 2014 15:13:18 +0200
Message-ID: <trinity-94c7efd5-f830-43d8-b8bb-e4efbc936744-1410268397701_at_3capp-mailcom-lxa13>

Very good, i've also used Seth's link to check into Database Triggers.  This was used too.
 
Definitely getting a better idea.
More specific question now.  We have 10.2.0.2, 10.2.0.4 and 11.2.0.4 databases that was Vital/Critical to the company that are in a DataGuard Primary/PhyStandby configuration currently.  We also have multiple DNS aliases for each application that points to the server that applications database is on, then Database Services, essentially, with the same name in the database.  TNS looks something like this:
 
VITALDB =
   (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)(HOST=VITALDB-lh)(PORT=1521)
      )
      (CONNECT_DATA=(SERVICE_NAME=VITALDB.domain.com)
    )
  )
Then, any application in that database has another tns entry, just replacing all the VITALDB names with whatever business has deemed the name of that app
 
I want to do this, what does everyone think?  Testing all of this in a test scenario first.
 
1) Add the below tns connection information for all of these Vital/Critical entries
2) Update all the apps with these tnsnames.ora files or JDBC connection strings
3) Create a DB startup trigger that will start all these services if the database_role = 'PRIMARY', else stop the services.
 
That's about it.
 
Lyall Barbour
Sent: Monday, September 08, 2014 at 4:29 PM
From: "Andrew Kerber" <andrew.kerber_at_gmail.com>
To: lyallbarbour_at_sanfranmail.com
Cc: ORACLE-L <oracle-l_at_freelists.org>
Subject: Re: Failover to DG physical standby
Normally you just set up a failover tns entry, with both the primary and the standby nodes listed.  Other methods include moving the name and/or ip address to the standby server in case of primary failure.  11gR2 allows you to define service named based on whether or not the database is primary or standby, so you use the same service name.  Somthing like this:

DEMODB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = PRIMARY)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = STANDBY)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = demodb)
    )
  )
 
On Mon, Sep 8, 2014 at 3:21 PM, Lyall personal <lyallbarbour_at_sanfranmail.com> wrote:
All, more of a theoretical question then specifics and syntax needed. Therefore no version/OS info given
 
We are working on a DR scenario at our company with two data centers. Trying to figure out how apps will connect to the DBs still when a disaster happens. How do you do it?
I'm trying these tns features for FAILOVER and LOAD_BALANCE
 
Thanks, Lyall
 
Sent from my BlackBerry 10 smartphone.
-- http://www.freelists.org/webpage/oracle-l



--
Andrew W. Kerber

'If at first you dont succeed, dont take up skydiving.'
-- http://www.freelists.org/webpage/oracle-l Received on Tue Sep 09 2014 - 15:13:18 CEST

Original text of this message