Oracle Data Guard Interview Questions
Oracle Data Guard Interview Questions
Some of the Oracle Data Guard related questions are listed below.
Q1
A1
Your primary database is running and you want to reduce downtime because of unplanned outages. You
create a replica of this primary database (termed as standby database).
You regularly ship redo generated in the primary database to standby database and apply it there. So that
is our ‘Data Guard’ standby database and it is in a continuous state of recovery, validating and applying
redo to remain in sync with the primary database.
Q2
Your standby database was out of reach because of network issue. How will you synchronize it with
primary database again?
A2
Data Guard automatically resynchronizes the standby following network or standby outages using redo
data that has been archived at the primary.
Q3
A3
This process takes care of the transmission of redo from a primary database to the standby database.
1 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
1) Log Network Server (LNS) reads redo information from the redo buffer in SGA of PRIMARY
Database
2) Log Network Server (LNS) passes redo to Oracle Net Services for transmission to the STANDBY
database
3) Remote File Server (RFS) records the redo information transmitted by the LNS at the STANDBY
database
4) Remote File Server (RFS) writes it to a sequential file called a standby redo log file (SRL) at the
STANDBY database
** For multi-standby configuration, the primary database has a separate LNS process for each standby
database.
** Two redo transport methods are supported with the LNS process: synchronous (SYNC) or
asynchronous (ASYNC).
Q4
What is the difference between SYNC and ASYNC redo transport method?
A4
1) Log Network Server (LNS) reads redo information from the redo buffer in SGA of PRIMARY
Database
2) Log Network Server (LNS) passes redo to Oracle Net Services for transmission to the STANDBY
database
3) Remote File Server (RFS) records the redo information transmitted by the LNS at the STANDBY
database
4) Remote File Server (RFS) writes it to a sequential file called a standby redo log file (SRL) at the
STANDBY database
5) Remote File Server (RFS) transmits an acknowledgement back to the LNS process on the primary
database
6) Log Network Server (LNS) notifies the LGWR that transmission is complete on the primary database.
7) Log Writer (LGWR) acknowledges the commit to the user.
2 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
Unlike SYNC, Asynchronous transport (ASYNC) eliminates the requirement that the LGWR wait for
acknowledgement from the LNS. This removes the performance impact on the
primary database irrespective of the distance between primary and standby locations.
So if the LNS is unable to keep pace and the log buffer is recycled before the redo can be transmitted to
the standby, the LNS automatically transitions to reading and sending from the Online Redo logs. Once
the LNS is caught up, it automatically transitions back to reading & sending directly from the log buffer.
1) Log Network Server (LNS) reads redo information from the redo buffer in SGA of PRIMARY
Database
2) Log Network Server (LNS) passes redo to Oracle Net Services for transmission to the STANDBY
database
3) Remote File Server (RFS) records the redo information transmitted by the LNS at the STANDBY
database
4) Remote File Server (RFS) writes it to a sequential file called a standby redo log file (SRL) at the
STANDBY database
so step 5, 6 & 7 as discussed above for SYNC are not applicable here.
The only drawback of ASYNC is the increased potential for data loss. Say a failure destroyed the primary
database before any transport lag was reduced to zero, this means any committed transactions that were a
part of the transport lag will be lost. So it is highly advisable to have enough network bandwidth to handle
peak redo
generation rates when using ASYNC method.
Q5
How Synchronous transport (SYNC) can impact the primary database performance?
A5
SYNC guarantees protection for every transaction that the database acknowledges as having been
committed but at the same time LGWR must wait for confirmation that data is protected at the standby
before it can proceed with the next transaction. It can impact primary database performance and it
3 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
Q6
A6
Your database is using ASYNC transport method and the instance load is at the peak. The LNS is unable
to keep pace and the log buffer is recycled before the redo can be transmitted to the standby, the LNS
automatically transitions to reading and sending from the Online Redo logs. Once the LNS is caught up, it
automatically transitions back to reading & sending directly from the log buffer.
Now in some cases there can be two or more log switches before the LNS has completed sending the redo
information from online redo log files and in meantime if any such required online redo log files were
archived then those redo information will be transmitted via Data Guard’s gap resolution process
“Automatic Gap Resolution”.
OR
In some other case when your network or the standby database is down and your primary system is one
busy system, so before the connection between the primary and standby is restored, a large log file gap
will be formed.
Automatic Gap Resolution will take care of such scenarios by following below action plan:
1) ARCH process on the primary database continuously ping the standby database during the outage to
determine its status.
2) As soon as the standby is restored, the ARCH ping process queries the standby control file (via its RFS
process) to determine the last complete log file that the standby received from the primary database.
3) Data Guard determines which log files are required to resynchronize the standby database and
immediately begins transmitting them using additional ARCH processes.
4) LNS process at primary database will also attempt and succeed in making a connection to the standby
database and will begin transmitting current redo. So first all the ARCH files are applied and then current
redo log.
4 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
The Data Guard architecture enables gaps to be resolved quickly using multiple background ARCH
processes
Q7
What is the difference between Physical standby and Logical standby database?
A7
Data Guard Apply process in standby database can apply redo information directly and in that case it will
be called physical standby.
OR It can apply SQL and in that case it will be called Logical standby.
Physical Standby:
In this case standby database is an exact, block-by-block, physical replica of the primary database.
The change vectors received by RFS process are directly applied to the standby database by using media
recovery.so here the apply process read data blocks, assemble redo changes from mappings, and then
apply redo changes to data blocks directly.
Physical Standby is the best choice for disaster recovery (DR) based upon their simplicity, transparency,
high performance, and good data protection.
Logical Standby:
In this case standby database uses SQL Apply method to “mine” the redo by converting it to logical
change records, and then building SQL
transactions and applying SQL to the standby database.
As this process of replaying the workload is more complex than the Physical Standby’s process, so it
requires more memory, CPU, and I/O.
One good advantage here is that a logical standby database can be opened read-write while SQL Apply is
active which means you can update (create/insert/delete etc) local tables and schemas in the logical
standby database.
Q8
5 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
How is Data Guard Apply process works if primary and secondary database involves Oracle RAC?
A8
Each primary Oracle RAC instance ships its own thread of redo that is merged by the Data Guard apply
process at the standby and applied in SCN order to the standby database.
If both Primary and standby databases are RAC:
If the standby is also an Oracle RAC database, only one instance (the apply instance) will merge and
apply changes to the standby database. If the apply instance fail for any reason, the apply process will
automatically failover to a surviving instance in the Oracle RAC standby database when using the Data
Guard broker.
Q9
What is Active Data Guard Option (Oracle Database 11g Enterprise Edition)?
A9
For physical standby database, prior to 11g, the database would have to be in the mount state when media
recovery was active which means you were not able to query the standby database during media recovery
stage as there was no read-consistent view.
Active Data Guard 11g features solves the read consistency problem by use of a “query” SCN. The media
recovery process on the standby database will advance the query SCN after all the changes in a
transaction have been applied . The query SCN will appear to user as the CURRENT_SCN column in the
V$DATABASE view on the standby database. So Read-only users will only be able to see data up to the
query SCN, and hence guaranteeing the same read consistency as the primary database.
This enables a physical standby database to be open as read-only while media recovery is active, making
it useful for doing read-only workloads.
Also, if you need read-write access to the standby database, you can use SQL Apply method of dataguard.
6 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
Q 10
What are the important database parameters related to Data Guard corruption prevention?
A 10
a) DB_ULTRA_SAFE
a) DB_BLOCK_CHECKSUM=FULL
DB_BLOCK_CHECKSUM detects redo and data block corruptions and detect corruptions on the
primary database and protect the standby database. This parameter requires minimal CPU resources.
b) DB_LOST_WRITE_PROTECT=TYPICAL
A lost write can occur when an I/O subsystem acknowledges the completion of a write, while in fact the
write did not occur in persistent storage.
This will create a stale version of the data block. When the DB_LOST_WRITE_PROTECT initialization
parameter is set, the database records buffer cache block reads in the redo log, and this information is
used to detect lost writes.
Q 11
7 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
A 11
Data Guard protection modes implement rules that controls how the configuration will respond to
failures, enabling you to achieve specific objectives for data protection, availability, and performance.
a) Maximum Performance
b) Maximum Availability
– first emphasis is on availability and second priority is zero data loss protection.
– requires SYNC redo transport so primary database performance may be impacted in waiting for
acknowledgment from the standby (it doesn’t mean indefinite wait in case standby database fails,
maximum wait will be equal to parameter NET_TIMEOUT seconds).
c) Maximum Protection
Q 12
What is Switchover event?
8 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
A 12
Switchover is useful for minimizing downtime during planned maintenance. It is a planned event in
which Data Guard reverses the roles of the primary and a standby database.
The primary database runs unaffected while we are making the required changes on our standby database
(e.g. patchset upgrades, full Oracle version upgrades, etc).
Once changes are complete, production is switched over to the standby site running at the new release.
This means regardless of how much time is required to perform planned maintenance, the only production
database downtime is the time required to execute a switchover, which can be less than 60 seconds
Below operations happens when switchover command is executed:
Q 13
A 13
The Failover process is similar to switchover event except that the primary database never has the chance
to write an EOR record as this is an unplanned event.
Whether or not a failover results in data loss depends upon the Data Guard protection mode:
b) Maximum Availability >> No Data Loss (except when there was a previous failure (e.g. a network
failure) that had INTERRUPTED REDO TRANSPORT and allowed the primary database to move ahead
of standby)
c) Maximum Performance (ASYNC) >> may lose any committed transactions that were not transmitted to
9 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
1) Manual
Administrator have complete control of primary-standby role transitions. It can lengthen the outage by the
amount of time required for the administrator to be notified and manual execution of command.
2) Automatic
It uses Data Guard’s Fast-Start Failover feature which automatically detects the failure, evaluates the
status of the Data Guard configuration, and, if appropriate, executes the failover to a previously chosen
standby database.
Q 14
A 14
Q 15
A 15
With 11g, you can thoroughly test your changes on a true replica of your production system and database
using actual production workload.
Data Guard 11g physical standby can now be converted to a snapshot standby, independent of the
primary database, that is open read-write and able to be used for preproduction testing. It uses Flashback
10 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
Database and sets a guaranteed restore point (GRP) at the SCN before the standby was open read-write.
NOTE: Primary database redo continues to be shipped to a snapshot standby, and while not applied, it is
archived for later use.
You can convert this snapshot database back into a synchronized physical standby database when testing
is complete. Redo Apply process at standby will take care that all
primary database redo archived while a snapshot standby is applied until it is caught up with the primary
database.
Q 16
What is the difference between Recovery Point Objective(RPO) and Recovery Time Objective
(RTO)?
A 16
RPO concerns with data. It is the amount of data you are willing to lose when the failure occurs in your
database system. Usually people define data loss in terms of time, so possible values can be 5 seconds of
data loss, 2 hours of data loss etc.
Remember that each standby database has its own set of attributes and parameters. It means you can mix
zero data loss standby databases with minimal data loss standby
databases in the same Data Guard configuration
If you have decided that you want to implement zero data loss strategy, then you should really focus on
Networks and Data Loss
B) Recovery Time Objective (RTO)
RTO is defined as how fast you can get back up and running (whereas RPO is concerned with data loss)
So with your RPO strategy you lost say only about 6 seconds of data as you committed to your client but
with RTO you need to formulate how fast clients can connect back to the database system after the data
loss has occurred.
Q 17
11 / 12
ORACLE DATA GUARD INTERVIEW QUESTIONS
by Brijesh Gogia - Expert Oracle - http://expertoracle.com
A 17
The SRL files are where the Remote File Server (RFS) process at your standby database writes the
incoming redo so that it is persistent on disk for recovery. SRL files are important for better redo
transport performance and data protection.
SRL are MUST in Maximum Availability or Maximum Protection mode and OPTIONAL (but
recommended) in Maximum Performance mode.
If there are no Standby Redo Log (SRL) files, then at each log switch in the primary database, the RFS
process on the standby database that is serving an asynchronous standby destination has to create an
archive log of the right size. While the RFS is busy doing creating the archive log file, the LNS process at
the primary database has to wait, getting further and further behind the LGWR (in case of Maximum
Performance mode). That is why it recommended to have Standby Redo Log (SRL) files in Maximum
Performance mode also.
We generally configure them on our primary database as well in preparation for a role transition b/w
primary-standby.
Also, do not multiplex SRLs. Since Data Guard will immediately request a new copy of the archive log if
an SRL file fails, there is no real need to have more than one copy of each.
12 / 12