Re: Number of standby logfiles on RAC Physical Standby Question/Clarification

  • From: Franck Pachot <franck@xxxxxxxxxx>
  • To: Seth Miller <sethmiller.sm@xxxxxxxxx>
  • Date: Wed, 3 Mar 2021 17:28:00 +0100

I have always seen this SRL = ORL + 1 formula without explanation. I think
that the idea is that the standby does not block the primary when in
maximum protection mode. But if you are in max performance and if the redo
logs is not undersized you probably don't need this +plus one".

On Wed, Mar 3, 2021 at 4:50 PM Seth Miller <sethmiller.sm@xxxxxxxxx> wrote:

Chris,

By "maximum # of logfiles", they mean the highest logfile count of all
threads, which in your case is 4. So, the formula would be (4 + 1) * 6. The
standby recovery threads will match the primary threads, regardless of how
many nodes are on the standby.

Seth

On Wed, Mar 3, 2021 at 9:48 AM Seth Miller <sethmiller.sm@xxxxxxxxx>
wrote:

Chris,

By "maximum # of logfiles", they mean the highest logfile count of all
threads, which in your case is 4. So, the formula would be (4 + 1) * 6. The
standby will recovery threads will match the primary threads, regardless of
how many nodes are on the standby.

Seth

On Wed, Mar 3, 2021 at 9:47 AM Chris Taylor <
christopherdtaylor1994@xxxxxxxxx> wrote:

Yeah I found another Oracle doc (also 10g) but in HTML format and it
says:

(maximum number of logfiles for each thread + 1) * maximum number of
threads


 So , that seems to be more correct.

I'm still a bit curious how the RAC will handle the thread differences
when replicating but I guess we'll find out.


On Wed, Mar 3, 2021 at 10:44 AM Andrew Kerber <andrew.kerber@xxxxxxxxx>
wrote:

I think the 30 number is correct, that is how I have always done it.

On Wed, Mar 3, 2021 at 9:36 AM Chris Taylor <
christopherdtaylor1994@xxxxxxxxx> wrote:

List,

So I've done a lot of physical standby database setups on
single-instance dbs.  Not so many on RAC however.

Oracle gives the following guidance for a RAC physical standby:

  (maximum # of logfiles +1) * maximum # of threads


The example given says:

  This example uses two online log files for each thread. Thus, the
number of standby redo logs should be (2 + 1) * 2 = 6. That is, one more
standby redo log file for each thread


On our RAC we have 6 nodes and I'm going to replicate to a 4 node
standby RAC (though the DB only ever runs on 2 nodes of each)

So, on the primary I have :

24 Groups and 6 Threads.    Each thread# has 4 Groups.  The total # of
logfiles is 24.

So Oracle's math here would be (24 + 1) * 6 or 150 standby logfiles.

That doesn't seem right to me.

Seems like it ought to be ((24 / 6) +1 ) * 6 for 30 standby logfiles

That would give 1 additional standby logfile per thread.

Is that correct?

Though I'm not sure what to do with the odd # threads *AND* the
primary runs on thread# 5 & 6 while the standby will be on thread# 3 & 4
though maybe Oracle can automagically resolve/transmit the changes even
though the thread #s might be different?

The doc for this (that I see repeated across multiple blogs) is
https://www.oracle.com/technetwork/database/features/availability/maa-wp-10g-racprimaryracphysicalsta-131940.pdf
(which is 10g but the advice should generally be true even if the math is
incorrect)

Chris




--
Andrew W. Kerber

'If at first you dont succeed, dont take up skydiving.'


Other related posts: