Re: Oracle High Availability Question(s)

From: Stefan Knecht <knecht.stefan_at_gmail.com>
Date: Thu, 15 Feb 2018 10:10:38 +0700
Message-ID: <CAP50yQ-t=8-uPMH6Fo8Oo03Qewk=itdwp_LpaKSYAqar0mpS2A_at_mail.gmail.com>



There's lots of information out there on how to make use of Data Guard. Particularly Oracle's "MAA" - Maximum Availability Architecture - initiative has resulted in some great documents:

http://www.oracle.com/technetwork/database/availability/oracle-database-maa-best-practices-155386.html

For your particular case, you can take a look at this document: http://www.oracle.com/technetwork/database/features/availability/maa-wp-11gr2-client-failover-173305.pdf which documents in a very detailed fashion how to configure your Oracle net stack to have painless switchovers or failovers.

The key is using a TNS alias that includes both the primary and standby, based on a service that is tied to the database role (e.g. if the database currently is the primary, the service is active, otherwise it is not).

Like this for example:

SALES= (DESCRIPTION_LIST= 12 (LOAD_BALANCE=off)  (FAILOVER=on)
 (DESCRIPTION=

(CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
(ADDRESS_LIST= (LOAD_BALANCE=on)
(ADDRESS=(PROTOCOL=TCP)(HOST=Austin-scan)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=oltpworkload))) (DESCRIPTION=
(CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
(ADDRESS_LIST= (LOAD_BALANCE=on) (ADDRESS=(PROTOCOL=TCP)(HOST=
Houston-scan)(PORT=1521))) (CONNECT_DATA=(SERVICE_NAME=oltpworkload))) )

As you can see, the single alias "SALES" includes both locations "Austin" and "Houston" and references them with the same service. That service is configured with a role-dependency and is only ever going to be active on the primary (whereever it may be).

If you use active data guard, you can also do the same thing with a read-only reporting service. Just assign that to be only active on standby roles.

You'd want to list the "intended" primary location, if there is one, in the first position to reduce the time it takes to connect.

Stefan

On Thu, Feb 15, 2018 at 3:39 AM, Scott Canaan <srcdco_at_rit.edu> wrote:

> We are currently using Data Guard and we hate it. It’s the only place we
> use it and we were never given any training on it, so we threw it together
> as best we could. Every time we have to do anything with it (including
> patching), we pray that it will recover and continue working.
>
>
>
> What we have proposed is to go to Linux clustering instead, eventually
> going to Libvert, eliminating the Data Guard and moving the fault tolerance
> to the cluster. The app is not Data Guard aware, so when a failover does
> occur, the app stops working until someone manually points it to the other
> server and restarts it. Linux clustering would solve that problem.
>
>
>
> RAC was mentioned as another alternative, so I’ve been looking into it,
> but everything I found showed all of the nodes pointing to one disk or disk
> array, which is not what we want. I’ve already said that if they want us
> to go with RAC, we will require training as we are not going to go into it
> blind like we did with Data Guard.
>
>
>
> Scott Canaan ’88 (srcdco_at_rit.edu)
>
> (585) 475-7886 – work (585) 339-8659 – cell
>
> “Life is like a sewer, what you get out of it depends on what you put into
> it.” – Tom Lehrer
>
>
>
> *From:* oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_
> freelists.org] *On Behalf Of *Tim Gorman
> *Sent:* Wednesday, February 14, 2018 3:27 PM
> *To:* fuzzy.graybeard_at_gmail.com; oracle-l_at_freelists.org
> *Subject:* Re: Oracle High Availability Question(s)
>
>
>
> Whether you have RAC licensing or not, anyone is far better off deploying
> Data Guard for high availability.
>
> Data Guard is designed for high-availability and disaster-recovery first
> and foremost. RAC is designed as a scalability solution first and
> foremost, and the only way Oracle gets away with marketing it as an
> availability solution is because RAC must include fault tolerance against
> node failure to even operate. RAC is wonderful and mature software, but
> using it for availability is an adaptation.
>
>
> On 2/14/18 12:10, Hans Forbrich wrote:
>
> You might want to look up 'stretch RAC'
>
> One useful article is Oracle's wwhite paper http://www.oracle.com/
> technetwork/products/clustering/overview/extendedracversion11-435972.pdf
>
> disclaimer: My opinion, not my employer's
> /Hans
>
> On 2018-02-14 11:59 AM, Scott Canaan wrote:
>
> Currently, we don’t have a license for RAC, therefore we aren’t using
> it. We have one application in particular that is required to be available
> as close to 7 x 24 x 365 as possible. One other requirement is that the
> redundancy includes physical disk, with one set of disks in one location
> and the redundant set in another location. In looking at RAC, it appears
> that a shared disk (or disk group) is used which doesn’t satisfy the second
> requirement. So far, I have not found a description of RAC that shows it
> using more than one disk / disk group for redundancy. What is the best way
> to accomplish the second requirement?
>
>
>

-- 
//
zztat - The Next-Gen Oracle Performance Monitoring and Reaction Framework!
Visit us at zztat.net | Support our Indiegogo campaign at igg.me/at/zztat |
_at_zztat_oracle

--
http://www.freelists.org/webpage/oracle-l
Received on Thu Feb 15 2018 - 04:10:38 CET

Original text of this message