About the Author p. xv About the Technical Contributors p. xvi About the Technical Reviewers p. xvi Acknowledgments p. xix Preface p. xxiii About This Book p. xxiii How to Use This Book p. xxiv Appendices p. xxvi Graphics Used p. xxvi Oracle Grid p. 1 Electric power grid p. 3 Computational grids p. 4 Evolution p. 5 Enterprise grid computing p. 6 Virtualization p. 7 Dynamic provisioning p. 7 Unified management p. 7 Globus Toolkit p. 8 Oracle grid p. 8 Oracle Database Clustering p. 9 Enterprise Manager p. 12 Conclusion p. 13 Real Application Cluster Architecture p. 15 RAC components p. 15 Oracle Clusterware p. 18 Real Application Cluster p. 30 Background processes in RAC p. 32 Database files in RAC p. 35 Server parameter file p. 35 Datafiles p. 36 Control files p. 36 Online redo log files p. 37 Archived redo log files p. 38 Other files p. 38 Maintaining read consistency in RAC p. 39 Cache fusion p. 40 Global Resource Directory p. 42 Mastering of resources p. 46 Lock management p. 49 Multi-instance transaction behavior p. 50 Recovery p. 65
Cache recovery p. 66 Transaction recovery p. 66 Online block recovery p. 67 Conclusion p. 68 Storage Management p. 69 Disk fundamentals p. 70 RAID 0 p. 73 RAID 1 p. 73 RAID 0+1 p. 74 RAID 1+0 p. 74 RAID 5 p. 75 Data operations p. 76 SAME p. 76 Oracle Managed Files p. 78 Storage options for RAC p. 78 RAW devices p. 78 Clustered file system p. 79 Automatic storage management (ASM) p. 79 ASM installation p. 80 Configuring ASMLIB p. 84 Architecture p. 87 Disks p. 88 Disk groups p. 89 Using the command line to create disk groups p. 91 Failure groups p. 93 Normal redundancy p. 94 High redundancy p. 95 External redundancy p. 97 ASM templates p. 103 Stripe types p. 107 Disk group in a RAC environment p. 108 ASM files p. 109 ASM-related V$ Views p. 110 Background process p. 110 How do they all work? p. 115 ASM allocation units p. 117 ASM component relationship p. 119 New command-line interface p. 120 Migration to ASM p. 121 Converting non-asm database to ASM using RMAN p. 121 Converting non-asm datafile to ASM using RMAN p. 122
Converting non-asm datafile to ASM using DBMS_FILE_TRANSFER stored procedure p. 123 Transferring non-asm datafile to ASM using FTP p. 125 ASM performance monitoring using EM p. 126 ASM implementations p. 127 Using ASM from a single node p. 128 Using ASM from multiple nodes p. 129 Using ASM in a RAC environment p. 131 ASM instance crash p. 132 ASM disk administration p. 132 Client connection to an ASM instance p. 133 Conclusion p. 135 Installation and Configuration p. 137 Optimal Flexible Architecture p. 137 Installation p. 138 Preinstallation steps p. 139 Selecting the clusterware p. 140 Operating system configuration p. 142 Creation of an oracle user account p. 142 Network configuration p. 143 NIC bonding p. 147 Verify interprocess communication buffer sizes p. 155 Jumbo frames p. 157 Linux kernel version 2.4 and 2.6 p. 158 AIX p. 158 Solaris p. 159 Remote access setup p. 159 Configuring the kernel p. 161 Configuring the hangcheck timer on Linux systems p. 163 Configuring and synchronizing the system clock p. 164 Installing Oracle p. 164 Phase I: Oracle Clusterware installation p. 166 Phase II: Oracle Software Installation p. 183 Phase III: database configuration p. 190 Phase IV: cluster components p. 204 OCR backup and restore p. 206 Setting paths and environment variables p. 206 Additional information p. 208 Conclusion p. 208 Services and Distributed Workload Management p. 209 Service framework p. 209 Types of services p. 211
Service creation p. 212 Distributed workload management p. 223 Oracle Database Resource Manager p. 223 Oracle Scheduler p. 225 DWM workshop p. 229 Fast Application Notification p. 242 Oracle Notification Services p. 243 FAN events p. 247 Conclusion p. 257 Failover and Load-Balancing p. 259 Failover p. 261 How does the failover mechanism work? p. 261 Database/instance recovery p. 264 Failover of VIP system service p. 267 Transparent application failover p. 270 Fast Connect Failover p. 288 Load-balancing p. 298 Applications not using connection pooling p. 299 Applications using connection pooling p. 303 Conclusion p. 308 Oracle Clusterware Administration Quick Reference p. 311 Node verification using olsnodes p. 312 Oracle Control Registry p. 314 Server control (srvctl) utility p. 314 Cluster services control (crsctl) utility p. 317 OCR administration utilities p. 324 ONS control (onsctl) utility p. 328 EVMD verification p. 333 Oracle Clusterware interface p. 335 Scripting interface framework p. 336 Oracle Clusterware API p. 343 Conclusion p. 343 Backup and Recovery p. 345 Recovery Manager p. 347 RMAN components p. 347 RMAN process p. 348 Channels p. 349 Target database p. 349 Recovery catalog database p. 350 Media Management Layer p. 350 Recovery features p. 350
Flash recovery p. 350 Change tracking p. 353 Backup encryption p. 355 Configuring RMAN for RAC p. 356 Backup and recovery strategy p. 361 Types of RMAN backups p. 361 Configuring RMAN p. 363 Reporting in RMAN p. 370 Recovery p. 373 Instance recovery p. 373 Database recovery p. 376 Conclusion p. 380 Performance Tuning p. 381 Methodology p. 382 Storage subsystem p. 389 Automatic Storage Management p. 394 Cluster interconnect p. 395 Interconnect transfer rate p. 397 SQL*Net tuning p. 404 Tuning network buffer sizes p. 405 Device queue sizes p. 407 SQL tuning p. 407 Hard parses p. 408 Logical reads p. 409 SQL Advisory p. 412 Queries with high cluster overhead p. 414 Sequences and index contention p. 415 Undo block considerations p. 416 Load-balancing p. 416 Tracing the load metric capture p. 419 Resource availability p. 421 Response time p. 423 Oracle Wait Interface p. 423 Consistent read versus current p. 425 gc cr/current block 2-way/3-way p. 427 gc cr/current block congested p. 429 gc remaster p. 430 wait for master SCN p. 430 gc cr/current request p. 431 gc current/cr block busy p. 432 gc current grant busy p. 432
Server/database statistics p. 432 Time model statistics p. 434 Service-level metrics p. 435 Identifying blockers across instances p. 441 Identifying hot blocks p. 442 Monitoring remastering p. 443 Operating system tuning p. 444 CPU utilization p. 444 Memory utilization p. 445 Automatic workload repository p. 448 Automatic Database Diagnostic Monitor p. 455 Active session history p. 458 EM Grid Control p. 460 Cluster latency/activity p. 460 Topology view p. 460 Spotlight on RAC p. 461 Conclusion p. 462 MAA and More p. 463 Data Guard p. 464 Data Guard architecture p. 466 Workshops p. 470 Failover p. 488 FAN and TAF p. 494 Adding instances p. 494 Oracle Streams p. 496 Architecture p. 497 Capture p. 497 Types of capture p. 499 Activation of the capture process p. 499 Staging (propagation) p. 503 Consumption (apply) p. 503 Activation of the apply process p. 504 Streams configuration workshop p. 505 Extended clusters p. 517 Architecture p. 518 Drawbacks p. 519 Conclusion p. 520 Best Practices p. 521 Planning p. 522 Understand RAC architecture p. 522 Set your expectations appropriately p. 523
Define your objectives p. 525 Build a project plan p. 527 Implementation p. 529 Cluster installation/configuration p. 532 Shared storage configuration p. 533 Oracle Clusterware (CRS) installation/configuration p. 534 Oracle RAC installation/configuration p. 535 Database creation p. 536 Application deployment p. 539 Operations p. 541 Production migration p. 542 Backup and recovery p. 543 Database monitoring and tuning p. 543 Conclusion p. 545 References p. 547 Utilities and Scripts p. 549 SRVCTL - Server Control p. 549 Cluster ready service (CRS) utility p. 555 ORADEBUG - Oracle Debugger p. 557 Perl Script p. 558 RMAN Scripts p. 561 Oracle Clustered File System p. 563 OCFS 1.0 p. 563 OCFS2 p. 569 Conclusion p. 579 TAF and FCF using Java p. 581 TAF example using Java p. 581 Migration(s) p. 593 Oracle 9iR2 to 10gR2 RAC p. 593 Current environment p. 593 Data migration from OCFS to ASM p. 615 Conclusion p. 625 Adding Additional Nodes to an Existing Oracle 10g R2 Cluster on Linux p. 625 Current environment p. 625 Conclusion p. 647 Index p. 649 Table of Contents provided by Blackwell's Book Services and R.R. Bowker. Used with permission.