Oracle Consulting Oracle Training Oracle Support Development
Home
Catalog
Oracle Books
SQL Server Books
IT Books
Job Interview Books
eBooks
Rampant Horse Books
911 Series
Pedagogue Books

Oracle Software
image
Write for Rampant
Publish with Rampant
Rampant News
Rampant Authors
Rampant Staff
 Phone
 800-766-1884
Oracle News
Oracle Forum
Oracle Tips
Articles by our Authors
Press Releases
SQL Server Books
image
image

Oracle 11g Books

Oracle tuning

Oracle training

Oracle support

Remote Oracle

STATSPACK Viewer

Privacy Policy

  

ISBN
0-9727513-0-0
ISBN 13
978-0972751308
Library of Congress Number: 2003107664
622 Pages
Perfect bind 9x7
PD 603
Shelving: Database/Oracle  Oracle In-Focus Series
# 1
 

 

Oracle9i RAC
Oracle Real Application Clusters Configuration and Internals

Mike Ault & Madhu Tumma

Retail Price $59.95
/  £37.95

Key Features About the Authors Table of Contents
  Reader Comments Errata
     

Order now and get immediate online access to the code depot!
 
  Only $41.95   (30% off)     
 


Combining the expertise of two world-renowned RAC experts, Oracle9i RAC is the first-of-its-find reference for RAC and TAF technology.  Learn from the experts how to quickly optimizer your Oracle clustered server environment for optimal performance and flexibility.

Covering all areas of RAC continuous availability and transparent application failover, this book is indispensable for any Oracle DBA who is charged with configuring and implementing a RAC clusters database.

Mike Ault is one of the world's most famous Oracle authors with over 20 books in-print, and Madhu Tumma is a recognized RAC clustering consultant. 

Together, Ault and Tumma dive deep inside RAC and show you the secrets for quickly implementing and tuning Oracle9i RAC database systems.

 
Key Features

* Presents a complete guide to the installation and configuration of Oracle9i Real Application Clusters.

* Describes secrets for successful design of RAC clusters

* Supplies expert internals of shared disk technology, raw devices and RAID with RAC.

* Exposes the internal concurrency, resource coordination and locking mechanism within RAC

* Explains configuration of Transparent Application Failover (TAF)

* Details tips for monitoring and tuning RAC applications
Furnishes tricks for using Oracle9i RAC Cluster Guard

 

About the Authors:

Mike Ault

Mike Ault has five Oracle Masters Certificates.  Ault was the first popular Oracle author with his book "Oracle7 Administration and Management" and he also wrote several of the "Exam Cram" books.

 

Madhu Tumma

  Madhu Tumma has been working as Software Developer, IT Manager, Database Administrator, and Technical Consultant for about 18 years. He has worked on a wide variety of projects and environments ranging from mainframe, client-server, eBusiness to managed services. He has provided consultancy to variety of clients on database clusters, business continuity and high availability solutions. His experience ranges across multiple relational database systems. Madhu is frequent speaker at Oracle World and IOUG where he presented many technical papers. Madhu has Master Degree in science and attended Business Management graduate program. He lives in New Jersey with his wife Hema and two children Sandi and Sudeep.

 

Table of Contents:

Chapter 1 - Introduction to RAC
The Dynamic Business Environment
The Explosive Growth of Business Data
            Online and Real-Time Access to Corporate Data
            Data Warehousing, Packaged Applications, E-Commerce Operations
            Dependence on Database Management Systems
            High Performance Systems
Introduction to Cluster Technology
Benefits of Real Application Clusters (RAC)
            What is a DB Cluster?
            Architectures of DB Clusters
            What is a Cluster Interconnect?
Problems with Other Architectures
            The IBM Shared-Nothing Configuration
            Microsoft Federated Servers Database
Seeing the High Availability Spectrum
Real Application Clusters
            Processing Prior to Cache Fusion
Oracle9i Real Application Clusters
            Attributes of an Oracle RAC Cluster
            Building an Oracle RAC Cluster
            RAC Performance and Scalability
 
Chapter 2 - High Performance and Highly Available Databases
High Performance
            Growth of Powerful Processors
            Why Parallel Processing?
            Opportunities for Parallelism
            Scalability
Parallel Databases
            Types of Parallelism
High Performance Computing Cluster – HPCC
Clusterize Applications
            How Do You Clusterize Applications?
Highly Available Databases
            Need for Highly Available Data
            Failure
            Availability
            Reliability and Serviceability
            Fault-tolerant Systems
            Database Availability
Clustered Systems
Databases Issues
Oracle RAC – High Performance and Highly Available Database
 
Chapter 3 - Database Clusters
Overview of the Cluster Technology
            How Clusters Differ from Distributed Systems
            Clusters are Different from Fault-tolerant Systems
            Database Clusters
            Why Clusters?
Types of Clusters
            Failover Clusters
            Scalable High Performance Clusters
            Application Server Clusters
            Other Types of Clusters
Components of a Cluster
            Cluster Nodes
            Emerging Server Cluster Architectures
            Cluster Interconnect
            Essentials for Parallel Database Clusters
            Cluster Interconnect Products
            Infiniband Interconnect
            ClusterWare
            Concurrent Database Access
Failover Database Clusters
            Resources, Resource Type
            Resource Groups
            The Concept of a Virtual Server
            Failover Process
            Examples
            Failover Cluster Architecture
            Oracle Database Service in HA Cluster
            Issues with FO Clusters – Hidden Risks
Parallel Database Clusters
            Shared-Nothing Model
            Shared-Disk Model
            Microsoft SQL Server Federated Database
            IBM Offerings
            Requirements for Parallel Clusters
            Oracle’s Instance Membership Recovery
            Cache Coherency and Lock Management
 
Chapter 4 - Real Application Cluster Architecture
Overview of Oracle Real Application Clusters
            RMAN for RAC
            RAC Workload Management
            RAC Scalability
            High Availability
Architecture
            Oracle9i Basic Processes
            Oracle9i Basic Internal Structures
            Oracle9i RAC Additional Processes
            Oracle9i RAC Additional SGA Areas
RAC Server Components
            GCS Resource Modes and Roles
            Accessing RAC
 
Chapter 5 - RAC Server and Disk Technology
Overview
Oracle9i RAC Disk System
RAW Partitions and Cluster File System
            Raw Partitions
            Cluster File System
Storage Technology and Redundancy
            Storage Disk System
            Understanding I/O Path
            Host Bus Adapter (HBA)
            Storage Redundancy Components
            Multiple RAID Controllers and Storage Processors
            Power Management
            High Availablity with SAN
            RAID and RAID Administration
            Multiple Access Paths to Host
            Logical Volume Manager
Cluster File System
            Oracle9i RAC and CFS
            Context Dependent Symbolic Link – CDSL
            Veritas CFS
            PolyServe Matrix Server (MxS)
            HP Tru64 CFS
            Oracle Cluster File System (OCFS)
            Other CFS Solutions
            Oracle Managed Files
            Oracle Disk Manager
Server Redundancy
            Necessity of Server Redundancy
            Redundancy Features
 
Chapter 6 - RAC Installation and Configuration
Architecture and Components
            Servers and Operating System
            Interconnect
            cluster_interconnect parameter
            Cluster Software
            Shared Storage
General Steps
            Phase – 1
            Phase – 2
            Phase – 3
Sun Solaris
            Hardware / System Details
            Creating the Cluster Using Sun Cluster 3.0
            Install the Volume Manager
            Install the Clusterware (OSD) for RAC
            Configure Shared Storage
            Veritas Cluster Volume Management
            UNIX Pre-Installation Steps
Using Veritas DBE / Advanced Cluster
            Communication Stack
            Shared Storage Configuration
            VCS Framework and Service Groups
            Veritas I/O Fencing and SCSI – 3 Persistency
            Install DBE / AC and Configure Service Groups – First Stage
            Install DBE / AC and Configure Service Groups – Second Stage
Using HP Tru64 UNIX
            Hardware / System Details
            Set up Disks
            Creating Installation and Database Creation
Using HP – UX Clusters
            Hardware / System Details
            Creating the Cluster
            Shared Storage Configuration
            Configure HP ServiceGuard Cluster
            UNIX Pre-Installation Tasks
Using IBM AIX
            Hardware / System Details
            What is VSD|?
            Configure using HACMP / ES
            General Parallel File System – GPFS
            Oracle Installation
Using Windows Cluster
            Hardware / System Details
            Creating the Cluster
            Configure Shared Storage
Using Linux
            Hardware / System Details
            Interconnect & Cluster Software
            Shared Storage Volumes
            Oracle Cluster File System (OCFS)
            PolyServe Matrix Server
Oracle Installation and Creation of Database
            Oracle Software Installation
            Database Creation using DBCA
            Database Creation Manually

Chapter 7 -
Internals of Real Application Clusters
Overview of Cache Fusion
            Evolution of Cache Fusion
            Nature of Cache Fusion
            Benefits of Cache Fusion
            Concurrency and Consistency
            Cache Coherency
            Global Cache Service

 

 

SGA Components and Locking
            SGA – System Global Area
            Program Global Area (PGA)
            Buffer Cache Management
            What is a Dirty Block?
            Multi – Version Consistency Model
RAC Components
            Global Cache Service
            Global Enqueque Service
            Row-Level Locks
            Global Resource Directory
            RAC Processes
Resource Coordination
            Synchronization
            GCS Resource Modes and Roles
            Concept of Past Image
            Lock Modes
            Block Access Modes and Buffer States
            Cache Fusion Scenarios
            Block transfers using Cache Fusion – Examples
            Block Access, Grants, and Interrupts
Cache Fusion and Recovery
            Recovery Features
            Recovery Methodology and Steps
            Recovery Process – Re-mastering Resources
 

Chapter 8 -
RAC Administration
Parameter Management
            Overview
            RAC and Initialization Parameters
UNDO Management
            UNDO Management in RAC
            UNDO Tablespace Features
            System Rollback Segment
Concept of Thread
            Thread Features
            Redo Thread Maintenance
Segment Space Management
            Automatic Segment Space Management
            Manual Space Management
            Oracle Managed Files
            Oracle Disk Manager
Server Control Utility
            srvctl add
            srvctl config
            srvctl getenv
            srvctl setenv
            srvctl start
            srvctl status
            srvctl stop
GSD daemon
            GSD Services
Using SQL*Plus
            Starting the Database in Cluster Mode
Using Oracle Enterprise Manager
            Configuration of OEM with RAC
 
Chapter 9 - Backup and Recovery
Overview of RAC backup and Recovery
            Export
            Cold Backup using Scripts
            Hot Backups using Scripts
            RMAN (Recovery Manager)
            Third Party Solutions
Backup of RAC Database
            Using RMAN for Backups
            Backup Procedures RMAN and RAC
Recovery in the RAC Environment
            Media Recovery in RAC Instances
            Using RMAN to Recover a RAC Environment
            Recovery in an OCFS Environment
            Recovery in a Raw File System Environment
            Parallel Recovery
Standby Databases in RAC Configuration
            Setting up a Standby Database for a RAC Cluster to a Single-Instance (One Node)
            Configuration when the Standby Database is a Single Node System
            Cross-Instance Archival
            Archive Log Gap Resolution and FAL
 
Chapter 10 - Failover with TAF
Overview of Transparent Application Failover
            Load Balancing
            Example listener.ora
Example TAF Configuration
            TAF with Connect-Time Failover and Client Load Balancing
            Configuring TAF to Retry a Connection
            Configuring TAF for Pre-Establishing Connections
            Verifying TAF Configurations
Using Instance Role for Configuring the Primary and Secondary Instance
            Connection to Instance Role Type
            Establishing a Connection to a Specific Instance
            Using BACKUP with TSF Pre-Establishing a Connection
            Using OCI Driver
 
Chapter 11 - Performance Monitoring and Tuning
Analysis of Performance Issues
            Monitoring RAC Cluster Interconnect Performance
            Use of the cache_transfer Views
            Monitoring the GES Processes
Monitoring and Tuning using OEM
            Configuring the Oracle Intelligent Agent with RAC
            Step-by-Step Setup of the Intelligent Agents on UNIX
            Monitoring RAC using OEM
 
Chapter 12 - Parallel Execution
Overview
            Types of Parallelism
Parallelism in Oracle Relational Database
            Parallel Execution Mechanism
            Granules for Parallelism
            Parallel Execution Servers
            Degree of Parallelism – DOP
            Parallel Query: SELECT
            Parallel DML – Update, Merge, Delete
            Parallel DML – Insert…Select
            Parallel DDL Statements
            Rules for Paralleling “Create Table as Select” (CTAS)
            SQL*LOADER – Parallel Load
            Other Parallel Operations
            Initialization Parameters at a Glance
            Monitoring and Diagnosing the Parallel Execution
 
Chapter 13 -  RAC Design Consideration
            Designing Equipment for Real Application Clusters
            What are the Effects of Component Failure?
            Provide Redundancy at Each Level
            Designing for High Performance
            Compartmenting Transactions to Specific Nodes
            Creating Efficient RAC Data Objects
            Proper Sequence Usage
            Tablespace Design in Real Application Clusters
            Extent Management and Locally Managed Tablespaces
            Minimizing Table Locks to Optimize Performance
            Performance for Object Creation in Real Application Clusters
 
Chapter 14 - Application Deployment
Overview
            Database Consolidation
            E-business Applications
RAC Suitability
            Advantages of the RAC Database
            Scalability
            Unpredictable Loads
            High Availability
Application Deployment Issues
            OLTP Applications using ‘exclusive’ or Specific Data
            RAC Suitability for Packaged Applications
            SAP and Real Application Clusters
            Siebel and RAC
            Oracle eBusiness Suite
Middleware Software
            JDBC Connectivity
            WebLogic and RAC Database
 
Chapter 15 - Migration to RAC Databases
Overview
Migration Methodology
            Moving a Single Instance to RAC
            Upgrading Oracle 8.1.7 to 9.2.0.2
            Moving HA Cluster to a RAC Cluster
Packaged Applications
            In Case of SAP Applications
            In Case of Oracle eBusiness Suite
 
Chapter 16 - Using RAC Cluster Guard
Examining the Basics of Cluster Guard Technology
            Oracle Real Application Clusters Guard Packs
            The RAC Guard PFSCTL Control Utility
            The Real Application Clusters Guard Monitors
            Oracle Real Application Clusters Guard Configuration Templates
            PFSSETUP Utility
Concepts of Oracle Real Application Clusters Guard
            Primary and Secondary Instance Roles
            Preferred Primary and Secondary Nodes
            Definition of the Home and Foreign Nodes
Architecture of Oracle Real Application Clusters Guard
            Oracle Real Application Clusters Guard Packs
            Resources
            Using the RAC Cluster Guard Command Line Utility
            Recovering from an Unplanned Outage on One Node
            Recovering from Unplanned Outages on Both Nodes
            Configuring the Call-Home Feature
            Enhancing Application Failover with Role Change Notification
ORATAB File Entries for Oracle RAC Guard
Using dbms_libcache to Warm the Secondary Cache
            Overview of Warming the Library Cache
            Set Up of DBMS_LIBCACHE
            Use of the dbms_libcache Package
            Managing the Oracle Real Application Clusters Guard Log Files
            What if a Failover Occurs While Datafiles are in Backup Model
Index:

.
.rhosts file

A
Acquisition Interrupt
Active/Passive architecture
address_list 
Advfs file system
agentctl 
alert_$oracle_sid.log  
alter session force parallel ddl
alter system set  
ARCH 
async_write()
ault_primary
ault_secondary  

B
Bladed Server
Block Arrival Interrupt
block pinging
Blocking Interrupt

C
cache coherency
Cache structure 
CALLOUT Listener
cdslinvchk 
cfscluster
CFSfsckd 
CFSMount 
CFSQlogckd  
chown
CKPT
clu_add_member 
clu_create
Cluster quorum disk 
cluster_database
cluster_interconnect 
clustercheck
ClusterPulse daemon
CLVM  
cmapplyconf
cmcfg.ora 
cmruncl 
cmrunnode
Command Line Interface
Concurrent Logical Volume Manager
Concurrent Virtual Shared Disk
connect_data 
consistent gets 
Control Files 
CQJ0   
create persistent initialization
create() 
cursor_sharing
CVMCluster
CVMVolDg  

D
DAM
DAS 
Data Access Method  
data-block pinging
datafile_directory
data-partitioning model
db block gets 
DB block PING 
db_block_size
db_create_file_dest 
db_create_online_log_dest_n
db_domain
db_file_multiblock_read_count
db_link 
db_nk_cache_size 
dba_tablespaces
dbca
DBCA   
dbca_raw_config
dbms_defer_sys.schedule_push 
dbms_libcache  
dbms_space.free_blocks
dbms_space.space_usage
dboraslib  
DBWR  
dc_free_extents  
dc_object_ids
dc_used_extents
Dedicated Server 
DEFAULT buffer pool
description_list
DIAG
Dictionary Cache
Dictionary Cache Locks
Direct Attached Storage
DLM daemon
dlm_conflicts
dlm_requests
dml_locks
Dnnnn

E
Enqueues
Exclusive mode

F
failover_mode
fal_client
fal_server
freelist groups
freelists 
fsck 

G
gc_files_to_locks
General Parallel File System
GES/GCS Area 
GLM 
global cache converts
global cache cr block receive time     
global cache cr blocks received  
global cache current blocks received   
global cache gets 
Global clustering
Global Lock Manager
global_dbname
GPFS  
GSD 
gsdaemon_node_name.log   
gsdctl  
gsdctl stat
gv$cache_transfer 
gv$cr_block_server  
gv$sysstat      

H
HA clusters   
HBA 
HBA drivers
High performance Computing Clusters   
Hot spare 
hot-plug component
hot-swap component 

I
icx_parameters  
Idle Standby
init.ora
installDBAC
instance_groups
instance_number
instance_role 
inter-query parallelism
intra-query parallelism
ioctl

J
JAVA Pool 
Jnnn

K
kaio()
KEEP buffer pool 

L
Large Pool
large_pool_size   
LCK
LCKx
LGWR  
Library cache 
Library Cache locks
lio_listio()
List structure 
LISTENER
listener.ora   
LMD 
LMDx    
LMON    
LMSn     
LMSx     
load_balance 
load_ocfs 
local_listener 
Lock structure
log_archive_dest_n
log_archive_format
log_archive_start 
logical hosts
Logical unit number
Logical Volume Manager
lvcreate   

M
main.cf
Mean Time Between Failures
Mean Time to Failure
Mean Time to Recovery
memb   
memory channel interconnect
mkcdsl  
mklv
MTBF 
MTTF    
MTTR  
Multiblock Read Consistency
Mutual Takeover  
mxmpio   

N
NAS
net_service_name  
NetApp Filer Cluster 
netca  
Network Appliance Filers
Network Attached Storage 
Network Load Balancing cluster 
Non-Uniform Memory Access 
Null mode
NUMA        

O
o_direct 
o_directio flag
ocfstool  
ocmargs.ora
ODM
odm_abort() 
odm_commit()
odm_create()  
odm_io() 
oinstall 
open()  
OPS 
ora_list
ora_oemagent_dir  
Oracle Database Configuration Assistant 
Oracle Disk Manager
Oracle Parallel Server
OracleServicesid  
oracm    
oraping_config  
ORCLUdlm  
osdba  
osoper      

P
PanPulse daemon 
Parallel Cache Management
Parallel Server Patch
parallel_adaptive_multi_user 
parallel_automatic_tuning
parallel_max_servers  
parallel_threads_per_cpu
Parallelism
PCM
pctfree
pctused 
pgsd_subsys 
PMON   
Pnnn  
pread()
pre-empt and abort’  
Psd drivers 
public_name.san 
pvcreate  
pwrite()  

Q
qlogckd
QMN

R
read()
readv()
RECO 
Recovery Manager
recovery_parallelism 
RECYCLE buffer pool 
Redo log Buffers 
Redo Log Files 
remote_listener  
Resource Group Manager
RGM
RMAN   
rollback_segment   
rootdg  
Rotating Standby
row cache locks 

S
SAN 
SANPulse daemon
sccheck  
scinstall 
SCL daemon
scsetup
Segregated clusters
Server Parameter File
service_names 
services.ora 
Shared mode
Shared Pool
shared-disk 
shared-nothing      
skgxn  
skgxp   
smit cm_add_grp  
smit configchk.dialog
smit group
smit hacmp
smit mkuser
smit user
smit vg  
SMON   
SMP 
SMP architecture 
Snnn        
SPFILE 
spfile.ora
Split-brain
spreport.sql
sqlnet.ora 
srvconfig 
srvctl add
srvctl config 
srvctl getenv  
srvctl setenv
srvctl start 
srvctl status 
srvctl stop 
statspack.snap
Storage Area Networks
Symmetric Multiprocessors

T
Table locks
Tablespaces 
tcp_recvspace
tcp_sendspace  
tnsnames.ora
trace_enabled 
Transaction locks 
typeversion    

U
udlm
uname 
UNDO Tablespaces 
undo_management  
undo_retention      
undo_suppress_errors 
undo_tablespace 
user_dump_dest
user_indexes
user_tables 
useradd  
utl_file   

V
v$bh
v$cache_transfer 
v$class_cache_transfer
v$enqueues_stats 
v$file_cache_transfer  
v$instance 
v$obj_stats
v$pq_sesstat
v$pq_slave
v$pq_sysstat 
v$px_process
v$rowcache 
v$session
v$session_wait  
v$sesstat 
v$sgastat  
v$system_event  
v$temp_cache_transfer
varyonvg 
vg_ops     
vgcreate  
vgextend   
Virtual Shared Disk
vnode cache
volassist 
Volume Manager Storage Administrator
Volume Manager Support Operations
VSD
vxdg
vxdiskadm
vxfen   
vxfenadm  
vxfenconfig
vxfencoorddg
vxfentsthdw
vxfsckd   
vxinstall     

W
write()      



 Errata:

Page 111

This page incorrectly states that "the multiple block size feature is not yet supported by Oracle9i RAC".

Page 341

In the Create Database statement, the filepath is missing a /

Also,

"To add an extra redo log thread:
 
ALTER DATABASE ADD LOGFILE THREAD 2
GROUP 4 ('u01/oracle/redo/file4a',
                'u02/oracle/redo/file4a') size 50M,
GROUP 5 ('u01/oracle/redo/file5a',
                'u02/oracle/redo/file5a', size 50M,
GROUP 6 ('u01/oracle/redo/file6a',
                 'u02/oracle/redo/file6a') size 50M"
 
There are two errors here:
1.)  the path to the redo logs should begin with /u01 and /u02 respectively and not
      u01 and u02.
2.)  the second member of each group should be suffixed with a "b" and not an "a",
      e.g) /u02/oracle/redo/file4b, /u02/oracle/redo/file5b, and /u02/oracle/redo/file6b.


Page 419

SELECT
   INST_ID,
   EVENT,
   P1 FILE_NUMBER,
   P2 BLOCK_NUMBER,
   WAIT_TIME
FROM
   V$SESSION_WAIT
WHERE
   EVENT IN ('buffer busy global cr', 'global cache busy', 'buffer busy global cache');

Should be:

SELECT
   INST_ID,
   EVENT,
   P1 FILE_NUMBER,
   P2 BLOCK_NUMBER,
   WAIT_TIME
FROM
   GV$SESSION_WAIT
WHERE
   EVENT IN ('buffer busy global cr', 'global cache busy', 'buffer busy global cache');


Reviews:
John from Atlanta, GA says:
Mike is my favorite Oracle author and I have all his books for the past ten years. They are all exceptional, and this one is no exception. RAC is difficult, and the example make it clear and easy to follow.


A reader from Louisiana says:
Oracle RAC is made simple in this book. Good thing about this book is, it focuses on the RAC and RAC related subjects. Many concepts of the clustering are dicussed in detail. It is a good buy and worth the money.


Laurence from Massachusetts says:
I am in the 10g beta program and I was happy to see that the authors kept their focus on only the 10g features that are important.

Many other new feature book want to cover all new features even if they are not important.

Mike Ault has done an excellent job with this book and all of the 10g features are explained in the context of how they will help improve database functions.



This book covers Oracle9i RAC, Oracle RAC, Oracle9i Real Application Clusters and Oracle Real Application Clusters.

 

   

 Copyright © 1996 -2016 by Burleson. All rights reserved.


Oracle® is the registered trademark of Oracle Corporation. SQL Server® is the registered trademark of Microsoft Corporation. 
Many of the designations used by computer vendors to distinguish their products are claimed as Trademarks