RAC Interview Questions
RAC Interview Questions
RAC Interview Questions
RAC stands for Real Application cluster. It is a clustering solution from Oracle Corporation that ensures
high availability of databases by providing instance failover, media failover features.
RAC stands for Real Application Cluster, you have n number of instances running in their own separate
nodes and based on the shared storage. Cluster is the key component and is a collection of servers
operations as one unit. RAC is the best solution for high performance and high availably. Non RAC
databases has single point of failure in case of hardware failure or server crash.
Mention the Oracle RAC software components :Oracle RAC is composed of two or more database
instances. They are composed of Memory structures and background processes same as the single
instance database.Oracle RAC instances use two processes GES(Global Enqueue Service), GCS(Global
Cache Service) that enable cache fusion.Oracle RAC instances are composed of following background
processes:
ACMS—Atomic Controlfile to Memory Service (ACMS)
What is GRD?
GRD stands for Global Resource Directory. The GES and GCS maintains records of the statuses of each
datafile and each cahed block using global resource directory.This process is referred to as cache fusion
and helps in data integrity.
Private interfaces is for intra node communication. VIP is all about availability of application. When a
node fails then the VIP component fail over to some other node, this is the reason that all applications
should based on vip components means tns entries should have vip entry in the host list
ACMS stands for Atomic Controlfile Memory Service.In an Oracle RAC environment ACMS is an agent
that ensures a distributed SGA memory update(ie)SGA updates are globally committed on success or
globally aborted in event of a failure.
What is Cache Fusion?
Cache fusion is the mechanism to transfer the data block from memory to memory of one node to the
other.If two nodes require the same block for query or update, the block must be transfered from the
cache of one node to the other. RAC system must equipped with low-latency and high speed inter-
connect to make it happen.
Give Details on Cache Fusion:Oracle RAC is composed of two or more instances. When a block of data is
read from datafile by an instance within the cluster and another instance is in need of the same block,it
is easy to get the block image from the insatnce which has the block in its SGA rather than reading from
the disk. To enable inter instance communication Oracle RAC makes use of interconnects. The Global
Enqueue Service(GES) monitors and Instance enqueue process manages the cahce fusion.
Cache Fusion is essentially a memory-to-memory transfer of data between the nodes in the RAC
environment. Before Cache Fusion, a node was required to write some of the data to disk before it could
be transferred to the next node in the cluster. Cache Fusion does a straight memory-to-memory
transfer. In addition, each node's SGA has a map of what data is contained in the other node's data
caches.
The performance improvement is phenomenal. Oracle leverages the vendor's high speed interconnects
between the nodes to achieve the cache-to-cache data transfers. Before Cache Fusion, when you added
a node to the cluster to increase performance of the application, it didn't always provide you with the
performance improvement that you hoped for. With Cache Fusion, you can easily cost justify the
addition of another node into a RAC cluster to increase the performance of the application running on it.
Oracle sales pitches describe it as 'near linear horizontal scalability'.
In a RAC environment the buffer cache is global across all instances in the cluster and hence the
processing differs.The most common wait events related to this are gc cr request and gc buffer busy
GC CR request :the time it takes to retrieve the data from the remote cache
Reason: RAC Traffic Using Slow Connection or Inefficient queries (poorly tuned queries will increase the
amount of data blocks requested by an Oracle session. The more blocks requested typically means the
more often a block will need to be read from a remote instance via the interconnect.)
GC BUFFER BUSY: It is the time the remote instance locally spends accessing the requested data block.
The process provides transparent support for XA global transactions in a RAC environment.The database
autotunes the number of these processes based on the workload of XA global transactions.
This process monitors global enques and resources across the cluster and performs global enqueue
recovery operations.This is called as Global Enqueue Service Monitor.
This process is called as global enqueue service daemon. This process manages incoming remote
resource requests within each instance.
This process is called as Global Cache service process.This process maintains statuses of datafiles and
each cahed block by recording information in a Global Resource Dectory(GRD).This process also controls
the flow of messages to remote instances and manages global data block access and transmits block
images between the buffer caches of different instances.This processing is a part of cache fusion
feature.
This process is called as Instance enqueue process.This process manages non-cache fusion resource
requests such as libry and row cache requests.
This process is called as Oracle RAC management process.These pocesses perform managability tasks for
Oracle RAC.Tasks include creation of resources related Oracle RAC when new instances are added to the
cluster.
This process is called as Remote Slave Monitor.This process manages background slave process creation
andd communication on remote instances. This is a background slave process.This process performs
tasks on behalf of a co-ordinating process running in another instance.
All datafiles, controlfiles, SPFIles, redo log files must reside on cluster-aware shred storage.
What is the significance of using cluster-aware shared storage in an Oracle RAC environment?
All instances of an Oracle RAC can access all the datafiles,control files, SPFILE's, redolog files when these
files are hosted out of cluster-aware shared storage which are group of shared disks.
Give few examples for solutions that support cluster storage:ASM(automatic storage management),raw
disk devices,network file system(NFS), OCFS2 and OCFS(Oracle Cluster Fie systems).
An interconnect network is a private network that connects all of the servers in a cluster. The
interconnect network uses a switch/multiple switches that only the nodes in the cluster can access.
Configure User Datagram Protocol(UDP) on Gigabit ethernet for cluster interconnect.On unix and linux
systems we use UDP and RDS(Reliable data socket) protocols to be used by Oracle Clusterware.Windows
clusters use the TCP protocol.
Can we use crossover cables with Oracle Clusterware interconnects?No, crossover cables are not
supported with Oracle Clusterware intercnects.
What is the use of cluster interconnect?Cluster interconnect is used by the Cache fusion for inter
instance communication.
Users can access a RAC database using a client/server configuration or through one or more middle tiers
,with or without connection pooling.Users can use oracle services feature to connect to database.
What is the use of a service in Oracle RAC environment?
Applications should use the services feature to connect to the Oracle database.Services enable us to
define rules and characteristics to control how users and applications connect to database instances.
The charateristics include a unique name, workload balancing and failover options,and high availability
characteristics.
Oracle Net Services enable the load balancing of application connections across all of the instances in an
Oracle RAC database.
A virtl IP address or VIP is an alternate IP address that the client connectins use instead of the standard
public IP address. To configureVIP address, we need to reserve a spare IP address for each node, and the
IP addresses must use the same subnet as the public network.
If a node fails, then the node's VIP address fails over to another node on which the VIP address can
accept TCP connections but it cannot accept Oracle connections.
What is the significance of VIP address failover?When a VIP address failover happens, Clients that
attempt to connect to the VIP address receive a rapid connection refused error .They don't have to wait
for TCP connection timeout messages.
What are the administrative tools used for Oracle RAC environments?
How do we verify that RAC instances are running?Issue the following query from any one node
connecting through SQL*PLUS.
The query gives the instance number under INST_NUMBER column,host_:instancename under
INST_NAME column.
What is FAN?Fast application Notification as it abbreviates to FAN relates to the events related to
instances,services and nodes.This is a notification mechanism that Oracle RAc uses to notify other
processes about the configuration and service level information that includes service status changes
such as,UP or DOWN events.Applications can respond to FAN events and take immediate action.
Where can we apply FAN UP and DOWN events?FAN UP and FAN DOWN events can be applied to
instances,services and nodes.
During times of cluster configuration changes,Oracle RAC high availability framework publishes a FAN
event immediately when a state change occurs in the cluster.So applications can receive FAN events and
react immediately.This prevents applications from polling database and detecting a problem after such a
state change.
It is a good practice to have ASM home seperate from the database hom(ORACLE_HOME).This helps in
upgrading and patching ASM and the Oracle database software independent of each other.Also,we can
deinstall the Oracle database software independent of the ASM instance.
Having ASM is the Oracle recommended storage option for RAC databases as the ASM maximizes
performance by managing the storage configuration across the disks.ASM does this by distributing the
database file across all of the available storage within our cluster database environment.
What is rolling upgrade?It is a new ASM feature from Database 11g.ASM instances in Oracle database
11g release(from 11.1) can be upgraded or patched using rolling upgrade feature. This enables us to
patch or upgrade ASM nodes in a clustered environment without affecting database availability.During a
rolling upgrade we can maintain a functional cluster while one or more of the nodes in the cluster are
running in different software versions.
Can rolling upgrade be used to upgrade from 10g to 11g database?No,it can be used only for Oracle
database 11g releases(from 11.1).
State the initialization parameters that must have same value for every instance in an Oracle RAC
database:
Some initialization parameters are critical at the database creation time and must have same
values.Their value must be specified in SPFILE or PFILE for every instance.The list of parameters that
must be identical on every instance are given below:
ACTIVE_INSTANCE_COUNT
ARCHIVE_LAG_TARGET
COMPATIBLE
CLUSTER_DATABASE
CLUSTER_DATABASE_INSTANCE
CONTROL_FILES
DB_BLOCK_SIZE
DB_DOMAIN
DB_FILES
DB_NAME
DB_RECOVERY_FILE_DEST
DB_RECOVERY_FILE_DEST_SIZE
DB_UNIQUE_NAME
PARALLEL_MAX_SERVERS
REMOTE_LOGIN_passWORD_FILE
UNDO_MANAGEMENT
What is ORA-00603: ORACLE server session terminated by fatal error or ORA-29702: error occurred in
Cluster Group Service operation?
What two parameters must be set at the time of starting up an ASM instance in a RAC environment?The
parameters CLUSTER_DATABASE and INSTANCE_TYPE must be set.
Oracle clusterware is made up of components like voting disk and Oracle Cluster Registry(OCR).
What is the use of OCR?Oracle clusterware manages CRS resources based on the configuration
information of CRS resources stored in OCR(Oracle Cluster Registry).
How does a Oracle Clusterware manage CRS resources?Oracle clusterware manages CRS resources
based on the configuration information of CRS resources stored in OCR(Oracle Cluster Registry).
Name some Oracle clusterware tools and their uses?OIFCFG - allocating and deallocating network
interfaces
What are the modes of deleting instances from ORacle Real Application cluster Databases?We can
delete instances using silent mode or interactive mode using DBCA(Database Configuration Assistant).
How do we remove ASM from a Oracle RAC environment?We need to stop and delete the instance in
the node first in interactive or silent mode.After that asm can be removed using srvctl tool as follows:
We can verify if ASM has been removed by issuing the following command:
How do we verify that an instance has been removed from OCR after deleting an instance?Issue the
following srvctl command:
cd CRS_HOME/bin
./crs_stat
How do we verify an existing current backup of OCR?We can verify the current backup of OCR using the
following command : ocrconfig -showbackup
There are two types of connection load-balancing:server-side load balancing and client-side load
balancing.
What is the difference between server-side and client-side connection load balancing?
Client-side balancing happens at client side where load balancing is done using listener.In case of server-
side load balancing listener uses a load-balancing advisory to redirect connections to the instance
providing best service.
The three main benefits are availability, scalability, and the ability to use low cost commodity hardware.
RAC allows an application to scale vertically, by adding CPU, disk and memory resources to an individual
server. But RAC also provides horizontal scalability, which is achieved by adding new nodes into the
cluster. RAC also allows an organization to bring these resources online as they are needed. This can
save a small or midsize organization a lot of money in the early stages of a project.
In a RAC environment, if a node in the cluster fails, the application continues to run on the surviving
nodes contained in the cluster. If your application is configured correctly, most users won't even know
that the node they were running on became unavailable.
What are the major RAC wait events?In a RAC environment the buffer cache is global across all instances
in the cluster and hence the processing
differs.The most common wait events related to this are gc cr request and gc buffer busy
GC CR request: the time it takes to retrieve the data from the remote cache
Reason: RAC Traffic Using Slow Connection or Inefficient queries (poorly tuned queries will increase the
amount of data blocks
requested by an Oracle session. The more blocks requested typically means the more often a block will
need to be read from a remote instance via the interconnect.)
GC BUFFER BUSY: It is the time the remote instance locally spends accessing the requested data block.
What are the different network components in Oracle 10g RAC?We have public, private, and VIP
components. Private interfaces is for intra node communication. VIP is all about availability of
application. When a node fails then the VIP component will fail over to some other node, this is the
reason that all applications should be based on VIP components. This means that tns entries should
have VIP entry in the host list.