Q What is SCAN? 
   
  Single Client Access Name (SCAN) is s a new Oracle Real Application Clusters
  (RAC) 11g Release 2 feature that provides a single name for clients to access
  an Oracle Database running in a cluster. The benefit is clients using SCAN do
  not need to change if you add or remove nodes in the cluster. 
   
  
  
Q what is dynamic remastering ? When will the dynamic
  remastering happens? 
dynamic
  remastering is ability to move the ownership of resource from one instance to
  another instance in RAC. dynamic resource remastering is used to implement
  for resource affinity for increased performance. resource affinity optimized
  the system in situation where update transactions are being executed in one
  instance. when activity shift to another instance the resource affinity
  correspondingly move to another instance. If activity is not localized then
  resource ownership is hashed to the instance. 
   
  In 10g dynamic remastering happens in file+object level.the process of
  remastering is very stringent. For one instance should touch more than 50
  times than the other instance in particular period(say 10 mints). this touch
  ratio and time can be tuned by gc_affinity_limit and _gc_affinity_time
  parameter. 
   
  
  
Q why we required to maintain odd number of voting
  disks? 
Odd number of disk
  are to avoid split brain, When Nodes in cluster can't talk to each other they
  run to lock the Voting disk and whoever lock the more disk will survive, if
  disk number are even there are chances that node might lock 50% of disk (2
  out of 4) then how to decide which node to evict.  
  whereas when number is odd, one will be higher than other and each for
  cluster to evict the node with less number 
   
  
  
Q How you check the
  health of Your RAC Database? 
   'crsctl' command from root or
  oracle user can be used to check the clusterware health But for starting or
  stopping we have to use root user or any privilege user. 
   
  [oracle@TEST_NODE1 ~]$ crsctl check crs 
  CSS appears healthy 
  CRS appears healthy 
  EVM appears healthy 
   
  
Q How
  you check the services in RAC Node? 
   We can check the service or start the
  services with 'srvctl' command.load balanced/TAF service named RAC online. 
   
  [oracle@TEST_NODE1 ~]$ srvctl start service -d orcl -s RAC 
  [oracle@TEST_NODE1 ~]$ crsstat  
   
  
  
Q If there is some
  issue with virtual IP how will you troubleshoot it?How will you change
  virtual ip? 
   To change the VIP (virtual IP) on a
  RAC node, use the command 
   
  [oracle@testnode oracle]$ srvctl modify nodeapps -A new_address 
   
   
  
  Q How
  you will backup your RAC Database? 
   Backup strategy of RAC Database: 
  An RAC Database consists of 
  1)OCR 
  2)Voting disk & 
  3)Database files, controlfiles, redolog files & Archive log files 
   
  
  
Q Do you have any
  idea of load balancing in application?How load balancing is done? 
  http://practicalappsdba.wordpress.com/category/for-master-apps-dbas/ 
   
  
  
 
Q What is RAC? 
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. 
   
  
  
 
Q What is RAC and how is it
  different from non RAC databases? 
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. 
   
  
  
 
Q Give the usage of srvctl ? 
srvctl start
  instance -d db_name -i "inst_name_list" [-o start_options] 
srvctl stop
  instance -d name -i "inst_name_list" [-o stop_options] 
srvctl stop
  instance -d orcl -i "orcl3,orcl4" -o immediate 
srvctl start
  database -d name [-o start_options] 
srvctl stop
  database -d name [-o stop_options] 
srvctl start
  database -d orcl -o mount 
   
  
  
 
Q 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) 
  GTX0-j—Global Transaction Process 
  LMON—Global Enqueue Service Monitor 
  LMD—Global Enqueue Service Daemon 
  LMS—Global Cache Service Process 
  LCK0—Instance Enqueue Process 
  RMSn—Oracle RAC Management Processes (RMSn) 
  RSMN—Remote Slave Monitor 
   
  
  
 
  Q 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. 
   
  
  
 
Q What are the different network
  components are in 10g RAC? 
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 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 
   
  
  
 
  Q Give Details on ACMS: 
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. 
   
  
  
 
Q 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. 
   
  
  
 
  Q Give details on GTX0-j  
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. 
   
  
  
 
  Q Give details on LMON 
This process
  monitors global enques and resources across the cluster and performs global
  enqueue recovery operations.This is called as Global Enqueue Service Monitor. 
   
  
  
 
  Q Give details on LMD 
This process is
  called as global enqueue service daemon. This process manages incoming remote
  resource requests within each instance. 
   
  
  
 
  Q Give details on LMS 
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. 
   
  
  
 
  Q Give details on LCK0 
This process is
  called as Instance enqueue process.This process manages non-cache fusion
  resource requests such as libry and row cache requests. 
   
  
  
 
  Q Give details on RMSn 
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. 
   
  
  
 
Q How to export and import crs resources while migrating
  Oracle RAC to new server. 
Below script generate svrctl add script
  for database, instance, service and 11G listeners from OCR from current RAC. 
  Save the result of the script and run it at new RAC. 
   
  for DBNAME in $(srvctl config database) 
  do 
   
  # Generate DB resource 
   
  srvctl config database -d $DBNAME -a | awk -v dbname="$DBNAME" \ 
  'BEGIN { FS=":" } 
  $1~/Oracle home/ || $1~/ORACLE_HOME/ {dbhome = "-o" $2} 
  $1~/Spfile/ || $1~/SPFILE/ {spfile = "-p" $2} 
  $1~/Disk Groups/ {dg = "-a" $2} 
  END { if (avail == "-a ") {avail = ""}; printf "%s
  %s %s %s %s\n", "srvctl add database -d ", dbname, dbhome,
  spfile, dg }' 
   
  # Generate Instance resource 
   
  srvctl status database -d $DBNAME | awk -v dbname="$DBNAME" \ 
  '$4~/running/ { printf "%s %s %s %s %s %s\n", "srvctl add
  instance -d ",dbname, " -i ", $2 ," -n ", $7 } 
  $5~/running/ { printf "%s %s %s %s %s %s \n", "srvctl add
  instance -d ",dbname, " -i ", $2 ," -n ", $8 }' 
   
  # Modify instance for 10G - ASM dependency 
   
  if [ $(echo $ORACLE_HOME | grep "1020" | wc -l ) -eq 1 ] 
  then 
  srvctl status database -d $DBNAME | awk -v dbname="$DBNAME" \ 
  '$2~/1$/ { printf "%s %s %s %s %s \n", "srvctl modify instance
  -d ",dbname, " -i ", $2 ," -s +ASM1" } 
  $2~/2$/ { printf "%s %s %s %s %s \n", "srvctl modify instance
  -d ",dbname, " -i ", $2 ," -s +ASM2" } 
  $2~/3$/ { printf "%s %s %s %s %s \n", "srvctl modify instance
  -d ",dbname, " -i ", $2 ," -s +ASM3" } 
  $2~/4$/ { printf "%s %s %s %s %s \n", "srvctl modify instance
  -d ",dbname, " -i ", $2 ," -s +ASM4" }' 
  fi 
   
  echo "srvctl start database -d $DBNAME" 
   
  # Generate Service resource 
   
  snamelist=$(srvctl status service -d $DBNAME | awk '{print $2}') 
   
  for sname in $snamelist 
  do 
  srvctl config service -d $DBNAME -s $sname| awk -v dbname="$DBNAME"
  -v sname=$sname \ 
  'BEGIN { FS=":"} 
  $1~/Preferred instances/ {pref = "-r" $2} 
  $1~/PREF/ {pref = "-r" $2; sub(/AVAIL/, "", pref) } 
  $1~/Available instances/ {avail = "-a" $2} 
  $2~/AVAIL/ {avail = "-a" $3} 
  $1~/Failover type/ {ft = "-e" $2} 
  $1~/Failover method/ {fm = "-m" $2} 
  $1~/Runtime Load Balancing Goal/ {g = "-B" $2} 
  END { if (avail == "-a ") {avail = ""}; printf "%s
  %s %s %s %s %s %s %s %s %s\n", "srvctl add service -d
  ",dbname, "-s ", sname, pref, avail ,ft, fm,g, "-P
  BASIC"}' 
  echo "srvctl start service -d $DBNAME -s $sname" 
  done 
  done 
   
  # Listener at 11G Home. 10G listener can't ba added with srvctl. 
   
   
  srvctl config listener | awk \ 
  'BEGIN { FS=":"; state = 0; } 
  $1~/Name/ {lname = "-l" $2; state=1}; 
  $1~/Home/ && state == 1 {ohome = "-o" $2; state=2;} 
  $1~/End points/ && state == 2 {lport = "-p " $3; state=3;} 
  state == 3 {if (ohome != "-o ") {printf "%s %s %s
  %s\n", "srvctl add listener ", lname, ohome, lport;}
  state=0;}' 
   
  
  
 Q Give details on RSMN 
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. 
   
  
  Q What components in RAC must reside in shared storage? 
All datafiles,
  controlfiles, SPFIles, redo log files must reside on cluster-aware shred
  storage. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q 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). 
   
  
  
 
  Q What is an interconnect network? 
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.  
   
  
  
 
  Q How can we configure the cluster interconnect? 
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. 
   
  
  
 
  Q Can we use crossover cables with Oracle Clusterware interconnects? 
No, crossover
  cables are not supported with Oracle Clusterware intercnects. 
   
  
  
 
  Q What is the use of cluster interconnect? 
Cluster
  interconnect is used by the Cache fusion for inter instance communication. 
   
  
  
 
  Q How do users connect to database in an Oracle RAC environment? 
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. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q What are the characteristics controlled by Oracle services feature? 
The
  charateristics include a unique name, workload balancing and failover
  options,and high availability characteristics. 
   
  
  
 
Q What enables the load balancing
  of applications in RAC? 
Oracle Net
  Services enable the load balancing of application connections across all of
  the instances in an Oracle RAC database. 
   
  
  
 
  Q What is a virtual IP address or VIP? 
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. 
   
  
  
 
  Q What is the use of VIP? 
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. 
   
  
  
 
  Q Give situations under which VIP address failover happens 
VIP addresses
  failover happens when the node on which the VIP address
  runs fails, all interfaces for the VIP address fails, all
  interfaces for the VIP address are disconnected from the network. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q What are the administrative tools used for Oracle RAC environments? 
Oracle
 RAC
  cluster can be administered as a single image using OEM(Enterprise 
Manager),SQL*PLUS,Servercontrol(SRVCTL),clusterverificationutility(cvu),DBCA,NETCA 
   
  
  
 
  Q How do we verify that RAC instances are running? 
Issue the
  following query from any one node connecting through SQL*PLUS. 
  $connect sys/sys as sysdba 
  SQL>select * from V$ACTIVE_INSTANCES; 
  The query gives the instance number under INST_NUMBER
  column,host_:instancename under INST_NAME column. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q Where can we apply FAN UP and DOWN events? 
FAN UP and FAN
  DOWN events can be applied to instances,services and nodes. 
  State the use of FAN events in case of a cluster configuration change? 
  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. 
   
  
  
 
  Q Why should we have seperate homes for ASm instance? 
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. 
   
  
  
 
  Q What is the advantage of using ASM? 
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. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q 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). 
   
  
  
 
  Q 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 
  INSTANCE_TYPE (RDBMS or ASM) 
  PARALLEL_MAX_SERVERS 
  REMOTE_LOGIN_passWORD_FILE 
  UNDO_MANAGEMENT 
   
  
  
 
Q What is ORA-00603: ORACLE server
  session terminated by fatal error or ORA-29702: error occurred in Cluster
  Group Service operation? 
RAC node name
  was listed in the loopback address... 
   
  
  
 
  Q Can the DML_LOCKS and RESULT_CACHE_MAX_SIZE be identical on all
  instances? 
These
  parameters can be identical on all instances only if these parameter values
  are set to zero. 
  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. 
   
  
  
 
  Q Mention the components of Oracle clusterware 
Oracle
  clusterware is made up of components like voting disk and Oracle Cluster
  Registry(OCR). 
   
  
  
 
Q What is a CRS resource? 
Oracle
  clusterware is used to manage high-availability operations in a
  cluster.Anything that Oracle Clusterware manages is known as a CRS resource.Some
  examples of CRS resources are database,an instance,a service,a listener,a VIP
  address,an application process etc. 
   
  
  
 
  Q 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). 
   
  
  
 
  Q 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). 
   
  
  
 
  Q Name some Oracle clusterware tools and their uses? 
OIFCFG -
  allocating and deallocating network interfaces 
  OCRCONFIG - Command-line tool for managing Oracle Cluster Registry 
  OCRDUMP - Identify the interconnect being used 
  CVU - Cluster verification utility to get status of CRS resources 
   
  
  
 
  Q 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). 
   
  
  
 
  Q 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: 
  srvctl stop asm -n node_name 
  srvctl remove asm -n node_name 
  We can verify if ASM has been removed by issuing the following command: 
  srvctl config asm -n node_name 
   
  
  
 
  Q How do we verify that an instance has been removed from OCR after
  deleting an instance? 
Issue the
  following srvctl command: 
  srvctl config database -d database_name 
  cd CRS_HOME/bin 
  ./crs_stat 
   
  
  
 
  Q How do we verify an existing current backup of OCR? 
We can verify
  the current backup of OCR using the following command : ocrconfig -showbackup 
  What are the performance views in an Oracle RAC environment? 
  We have v$ views that are instance specific. In addition we have GV$ views
  called as global views that has an INST_ID column of numeric data type.GV$
  views obtain information from individual V$ views. 
  What are the types of connection load-balancing? 
  There are two types of connection load-balancing:server-side load balancing
  and client-side load balancing. 
   
  
  
 
  Q 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. 
   
  
  
 
  Q What are the three greatest benefits that RAC provides?? 
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. 
   
  
  
 
Q 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. 
   
  
  
  
Q 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. 
   
  
  
 
Q Tune the following RAC DATABASE
  (DBNAME=PROD) which is 3 node RAC. 
   
  PROD1             PROD2      
                PROD3 
  CPU 8               CPU 15    
                 CPU 8 
  32 GB RAM       12 GB RAM          
    16 GB RAM 
   
   
What are you
  looking for here? What tuning information do you expect? 
  It is a 3 node cluster with different hardware configuration running RAC. 
  I would put 20% of the memory for Oracle in each node. So that would mean
  that the SGA is different in each of the nodes. 
  Also since the CPU's are different PROD2 can have more number of max number
  of processes as compared to the rest of them. 
   
  But as I said this is just configuration, this is not tuning. Question is not
  clear. 
   
   
  
  
 
Q Write a
  sample script for RMAN for the recovery if all the instance are down.(First
  explain the procedure how you will restore) 
 
Bring all nodes
  down. 
  Start one Node 
  Restore all datafiles and archive logs. 
  Recover 1 Node. 
  Open the database. 
  bring other nodes up. 
  Confirm that all nodes are operational. 
   
  
  
 
Q. Clients are
  performing some operation and suddenly one of the datafile is experiencing
  problem what do you do? The cluster is a two node one. 
A. Bring the datafile offline recover
  the datafile. 
   
  
  
 
Q. How can you
  connect to a specific node in a RAC environment? 
A. tnsnames.ora
  ensure that you have INSTANCE_NAME specified in it. 
   
  
 
Q How
  to move OCR and Voting disk to new storage device? 
Moving OCR 
  ========== 
  You must be logged in as the root user, because root owns the OCR files. Also
  an ocrmirror must be in place before trying to replace the OCR device. 
   
  Make sure there is a recent backup of the OCR file before making any changes: 
   
  ocrconfig –showbackup 
   
  If there is not a recent backup copy of the OCR file, an export can be taken
  for the current OCR file. Use the following command to generate an export of
  the online OCR file: 
   
  In 10.2 
   
  # ocrconfig –export -s online 
   
  In 11g 
   
  # ocrconfig -manualbackup 
   
  The new OCR disk must be owned by root, must be in the oinstall group, and
  must have permissions set to 640. Provide at least 100 MB disk space for the
  OCR. 
   
  On one node as root run: 
   
  # ocrconfig -replace ocr  
  # ocrconfig -replace ocrmirror  
   
  Now run ocrcheck to verify if the OCR is pointing to the new file 
   
  Moving Voting Disk 
  ================== 
   
  Note: crsctl votedisk commands must be run as root 
   
  Shutdown the Oracle Clusterware (crsctl stop crs as root) on all nodes before
  making any modification to the voting disk. Determine the current voting disk
  location using: 
   
  crsctl query css votedisk 
   
  Take a backup of all voting disk: 
   
  dd if=voting_disk_name
  of=backup_file_name 
   
  To move a Voting Disk, provide the full path including file name: 
   
  crsctl delete css
  votedisk –force 
  crsctl add css votedisk –force 
   
  After modifying the voting disk, start the Oracle Clusterware stack on all
  nodes 
   
  # crsctl start crs 
   
  Verify the voting disk location using 
   
  crsctl query css votedisk 
   
  
  
Q What is runfixup.sh script in Oracle Clusterware 11g
  release 2 installation 
 
With Oracle
  Clusterware 11g release 2, Oracle Universal Installer (OUI) detects
  when the minimum requirements for an installation are not met, and
  creates shell scripts, called fixup scripts, to finish incomplete system
  configuration steps. If OUI detects an incomplete task, then it
  generates fixup scripts (runfixup.sh). You can run the fixup script
  after you click the Fix and Check Again Button. 
 
The Fixup
  script does the following: 
 
■ If necessary
  sets kernel parameters to values required for successful installation, 
including: 
– Shared memory
  parameters. 
– Open file
  descriptor and UDP send/receive parameters. 
■ Sets
  permissions on the Oracle Inventory (central inventory) directory. 
■ Reconfigures
  primary and secondary group memberships for the installation 
owner, if
  necessary, for the Oracle Inventory directory and the operating system 
privileges
  groups. 
■ Sets shell
  limits if necessary to required values. 
   
  
 
 
Q When exactly during the
  installation process are clusterware components created? 
   
  After fulfilling the pre-installation requirements, the basic installation
  steps to follow are: 
   
  1. Invoke the Oracle Universal Installer (OUI) 
   
  2. Enter the different information for some components like: 
  - name of the cluster 
  - public and private node names 
  - location for OCR and Voting Disks 
  - network interfaces used for RAC instances 
  -etc. 
   
  3. After the Summary screen, OUI will start copying under the
  $CRS_HOME (this is the $ORACLE_HOME for Oracle Clusterware) in the local node
  the libraries and executables. 
  - here we will have the daemons and scripts init.* created and configured
  properly. 
   
  Oracle Clusterware is formed of
  several daemons, each one of which have a special function inside the stack.
  Daemons are executed via the init.* scripts (init.cssd, init.crsd and
  init.evmd). 
   
  - note that for CRS only some client libraries are recreated, but not all the
  executables (as for the RDBMS). 
   
  4. Later the software is propagated to the rest of the nodes in the
  cluster and the oraInventory is updated. 
   
  5. The installer will ask to execute root.sh on each node. Until this
  step the software for Oracle Clusterware is inside the $CRS_HOME. 
   
  Running root.sh will create several components outside the $CRS_HOME: 
   
  - OCR and VD will be formated. 
   
  - control files (or SCLS_SRC files ) will be created with the correct
  contents to start Oracle Clusterware. 
   
  These files are used to control
  some aspects of Oracle Clusterware like: 
  - enable/disable processes from
  the CSSD family (Eg. oprocd, oslsvmon) 
  - stop the daemons (ocssd.bin,
  crsd.bin, etc). 
  - prevent Oracle Clusterware from
  being started when the machine boots. 
  - etc. 
   
  - /etc/inittab will be updated and the init process is notified. 
   
  In order to start the Oracle
  Clusterware daemons, the init.* scripts first need to be run. These scripts
  are executed by the daemon init. To accomplish this some entries must be
  created in the file /etc/inittab. 
   
  - the different processes init.* (init.cssd, init.crsd, etc) will start the
  daemons (ocssd.bin, crsd.bin, etc). When all the daemons are running then we
  can say that the installation was successful 
   
  - On 10.2 and later, running root.sh on the last node in the cluster also
  will create the nodeapps (VIP, GSD and ONS). On 10.1, VIPCA is executed as
  part of the RAC installation. 
   
  6. After running root.sh on each node, we need to continue with the
  OUI session. After pressing the 'OK' button OUI will include the information
  for the public and cluster_interconnect interfaces. Also CVU (Cluster
  Verification Utility) will be executed. 
   
   
  
  
 
Q What are Oracle Clusterware
  processes for 10g on Unix and Linux 
   
  Cluster Synchronization Services
  (ocssd) — Manages
  cluster node membership and runs as the oracle user; failure of this process
  results in cluster restart. 
   
  Cluster Ready Services (crsd) — The crs process manages cluster
  resources (which could be a database, an instance, a service, a Listener, a
  virtual IP (VIP) address, an application process, and so on) based on the
  resource's configuration information that is stored in the OCR. This includes
  start, stop, monitor and failover operations. This process runs as the root
  user 
   
  Event manager daemon (evmd) —A background process that publishes
  events that crs creates. 
   
  Process Monitor Daemon (OPROCD) —This process monitor the cluster and
  provide I/O fencing. OPROCD performs its check, stops running, and if the
  wake up is beyond the expected time, then OPROCD resets the processor and
  reboots the node. An OPROCD failure results in Oracle Clusterware restarting
  the node. OPROCD uses the hangcheck timer on Linux platforms. 
   
  RACG (racgmain, racgimon) —Extends clusterware to support
  Oracle-specific requirements and complex resources. Runs server callout
  scripts when FAN events occur. 
   
  
  
 
  Q What are Oracle database background processes specific to RAC 
   
  •LMS—Global Cache Service Process 
   
  •LMD—Global Enqueue Service Daemon 
   
  •LMON—Global Enqueue Service Monitor 
   
  •LCK0—Instance Enqueue Process 
   
  To ensure that each Oracle RAC database instance obtains the block that it
  needs to satisfy a query or transaction, Oracle RAC instances use two
  processes, the Global Cache Service (GCS) and the Global Enqueue Service
  (GES). The GCS and GES maintain records of the statuses of each data file and
  each cached block using a Global Resource Directory (GRD). The GRD contents
  are distributed across all of the active instances.  
   
  
  
 
Q What are Oracle Clusterware Components 
   
  Voting Disk — Oracle RAC uses the voting disk
  to manage cluster membership by way of a health check and arbitrates cluster
  ownership among the instances in case of network failures. The voting disk
  must reside on shared disk. 
   
  Oracle Cluster Registry (OCR) — Maintains cluster configuration
  information as well as configuration information about any cluster database
  within the cluster. The OCR must reside on shared disk that is accessible by
  all of the nodes in your cluster 
   
  
  
 
Q How do you troubleshoot node reboot  
   
  Please check metalink ... 
   
  Note 265769.1 Troubleshooting CRS Reboots 
  Note.559365.1 Using Diagwait as a diagnostic to get more information for
  diagnosing Oracle Clusterware Node evictions. 
   
  
  
 
Q How do you backup the OCR 
   
  There is an automatic backup mechanism for OCR. The default location is :
  $ORA_CRS_HOME\cdata\"clustername"\ 
   
  To display backups : 
  #ocrconfig -showbackup 
  To restore a backup : 
  #ocrconfig -restore 
   
  With Oracle RAC 10g Release 2 or later, you can also use the export
  command: 
  #ocrconfig -export -s online, and use -import option to restore the contents
  back. 
  With Oracle RAC 11g Release 1, you can do a manaual backup of the OCR with
  the command: 
  # ocrconfig -manualbackup  
   
   
  
  
 
Q How do you backup voting disk 
   
  #dd if=voting_disk_name of=backup_file_name 
   
  
  
 
Q How do I identify the voting disk location  
   
  #crsctl query css votedisk 
   
  
  
 
Q How do I identify the OCR file location  
   
  check /var/opt/oracle/ocr.loc or /etc/ocr.loc ( depends upon platform) 
  or 
  #ocrcheck 
   
  
  
 
Q Is ssh required for normal Oracle RAC operation ? 
   
  "ssh" are not required for normal Oracle RAC operation. However
  "ssh" should be enabled for Oracle RAC and patchset installation. 
   
  
  
 
Q What is SCAN? 
   
  Single Client Access Name (SCAN) is s a new Oracle Real Application Clusters
  (RAC) 11g Release 2 feature that provides a single name for clients to access
  an Oracle Database running in a cluster. The benefit is clients using SCAN do
  not need to change if you add or remove nodes in the cluster. 
   
   
  
  
 
Q What is the purpose of Private Interconnect ? 
   
  Clusterware uses the private interconnect for cluster synchronization
  (network heartbeat) and daemon communication between the the clustered nodes.
  This communication is based on the TCP protocol. 
  RAC uses the interconnect for cache fusion (UDP) and inter-process
  communication (TCP). Cache Fusion is the remote memory mapping of Oracle
  buffers, shared between the caches of participating nodes in the
  cluster.  
   
  
  
 
Q Why do we have a Virtual IP (VIP) in Oracle RAC? 
   
  Without using VIPs or FAN, clients connected to a node that died will often
  wait for a TCP timeout period (which can be up to 10 min) before getting an
  error. As a result, you don't really have a good HA solution without using
  VIPs. 
  When a node fails, the VIP associated with it is automatically failed over to
  some other node and new node re-arps the world indicating a new MAC address
  for the IP. Subsequent packets sent to the VIP go to the new node, which will
  send error RST packets back to the clients. This results in the clients
  getting errors immediately 
   
  
  
 
Q What do you do if you see GC CR
  BLOCK LOST in top 5 Timed Events in AWR Report?  
   
  This is most likely due to a fault in interconnect network. 
  Check netstat -s 
  if you see "fragments dropped" or "packet reassemblies
  failed" , Work with your system administrator find the fault with
  network.  
   
  
  Q How many nodes are supported in a RAC Database? 
   
  10g Release 2, support 100 nodes in a cluster using Oracle Clusterware, and
  100 instances in a RAC database. 
   
  
  
 
  Q Srvctl cannot start instance, I get the following error PRKP-1001
  CRS-0215, however sqlplus can start it on both nodes? How do you identify the
  problem? 
   
  Set the environmental variable SRVM_TRACE to true.. And start the instance
  with srvctl. Now you will get detailed error stack. 
   
  
  
   
Q what is the purpose of the ONS
  daemon? 
   
  The Oracle Notification Service (ONS) daemon is an daemon started by the CRS
  clusterware as part of the nodeapps. There is one ons daemon started per
  clustered node. 
  The Oracle Notification Service daemon receive a subset of published
  clusterware events via the local evmd and racgimon clusterware daemons and
  forward those events to application subscribers and to the local listeners. 
   
  This in order to facilitate: 
   
  a. the FAN or Fast Application Notification feature or allowing applications
  to respond to database state changes. 
  b. the 10gR2 Load Balancing Advisory, the feature that permit load balancing
  accross different rac nodes dependent of the load on the different nodes. The
  rdbms MMON is creating an advisory for distribution of work every 30seconds
  and forward it via racgimon and ONS to listeners and applications. 
   
  
  
 
Q How do users connect to database
  in an Oracle RAC environment? 
 
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. 
   
  
  
 
Q 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. 
   
  
  
 
Q What are the characteristics controlled by Oracle
  services feature? 
The characteristics include a unique
  name, workload balancing and failover options, and high availability
  characteristics. 
   
  
  
A voting disk
  is a file that manages information about node membership. 
   
  
  
Q What are the administrative tasks involved with voting
  disk? 
Following
  administrative tasks are performed with the voting disk : 
1) Backing up
  voting disks 
2) Recovering
  Voting disks 
3) Adding
  voting disks 
4) Deleting
  voting disks 
5) Moving
  voting disks 
   
  
  
Q How do we backup voting disks? 
1) Oracle
  recommends that you back up your voting disk after the initial cluster
  creation and after we complete any node addition or deletion procedures. 
2) First, as
  root user, stop Oracle Clusterware (with the crsctl stop crs command) on all
  nodes. Then, determine the current voting disk by issuing the following
  command: 
crsctl query
  votedisk css 
3) Then, issue
  the dd or ocopy command to back up a voting disk, as appropriate. 
Give the syntax
  of backing up voting disks:- 
 
On Linux
  or UNIX systems: 
dd
  if=voting_disk_name of=backup_file_name 
where, 
voting_disk_name is the name of the active voting disk 
backup_file_name is the name of the file to which we
  want to back up the voting disk contents 
 
On Windows
  systems, use the ocopy command: 
ocopy
  voting_disk_name backup_file_name 
   
  
  
Q What is the Oracle Recommendation for backing up voting
  disk? 
Oracle
  recommends us to use the dd command to backup the voting disk with a minimum
  block size of 4KB. 
   
  
  
Q How do you restore a voting disk? 
To restore the
  backup of your voting disk, issue the dd or ocopy command for Linux and UNIX
  systems or ocopy for Windows systems respectively. 
On Linux
  or UNIX systems: 
dd if=backup_file_name
  of=voting_disk_name 
On Windows
  systems, use the ocopy command: 
ocopy
  backup_file_name voting_disk_name 
where, 
backup_file_name is the name of the voting disk backup
  file 
voting_disk_name is the name of the active voting disk 
 
   
  
  
Q How can we add and remove multiple voting disks? 
If we have
  multiple voting disks, then we can remove the voting disks and add them back
  into our environment using the following commands, where path is the complete
  path of the location where the voting disk resides: 
crsctl delete
  css votedisk path 
crsctl add css
  votedisk path 
   
   
  
  
Q How do we stop Oracle Clusterware?When do we stop it? 
Before making
  any modification to the voting disk, as root user, stop Oracle Clusterware
  using the crsctl stop crs command on all nodes. 
   
   
  
  
Q How do we add voting disk? 
To add a voting
  disk, issue the following command as the root user, replacing the path
  variable with the fully qualified path name for the voting disk we want to
  add: 
crsctl add css
  votedisk path -force 
   
  
  
Q How do we move voting disks? 
To move a
  voting disk, issue the following commands as the root user, replacing the
  path variable with the fully qualified path name for the voting disk we want
  to move: 
crsctl delete
  css votedisk path -force 
crsctl add css
  votedisk path -force 
   
  
  
Q How do we remove voting disks? 
To remove a
  voting disk, issue the following command as the root user, replacing the path
  variable with the fully qualified path name for the voting disk we want to
  remove: 
crsctl delete
  css votedisk path -force 
Q What should we do after modifying voting disks? 
After modifying
  the voting disk, restart Oracle Clusterware using the crsctl start crs
  command on all nodes, and verify the voting disk location using the following
  command: 
crsctl query
  css votedisk 
   
  
  
Q When can we use -force option? 
If our cluster
  is down, then we can include the -force option to modify the voting disk
  configuration, without interacting with active Oracle Clusterware daemons.
  However, using the -force option while any cluster node is active may corrupt
  our configuration. 
 
 |