Presentation #36693 Presentation #36693 Oracle High Availability Solutions in a Nutshell Daniel T. Liu Senior Technical Consultant First American Real Estate Solutions Date: Tuesday, September 10, 8:30 AM - 9:30 AM Place: Moscone Room 104
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 2 Agenda Introduction High Availability Concepts High Availability Challenges High Availability Solutions
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 3 Agenda Oracle Advanced Replication Oracle Real Application Cluster (RAC) Oracle Data Guard
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 4 Agenda Oracle Streams Choose the Right High-availability Solutions Summary Q & A
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 5 Introduction Why do we need to provide system and database High Availability? Planned Downtime –Database backup/upgrade/patching –Operating system upgrade/patching –Hardware and Network maintenance Unplanned Downtime –Corruptions Logical corruptions Physical corruptions
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 6 Introduction Unplanned Downtime –Human Errors Accidentally drops, truncates a table Accidentally delete, update rows in a table Accidentally delete a data file or drop a tablespace –Disasters War, terrorism Earthquake, flood, fire or hurricane No power for a long period Server crash, malfunction of hardware
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 7 High Availability Concepts What is High Availability? –In the old days Local time Monday thru Friday 8 am to 6 pm –Current environment Global 365 x 24 x 7 Minimal downtime (planned or unplanned)
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 8 High Availability Concepts Understanding High Availability –Computing environments configured to provide nearly full-time availability are known as high availability systems. –When failures occur, the failover process moves processing performed by the failed component to the backup component. –The more transparent that failover is to users, the higher the availability of the system.
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 9 High Availability Concepts Measuring Availability –The mean time to recover (MTTR) –The mean time between failures (MTBF) –Total uptime in a year (%) Minutes of Downtime Minutes of Uptime Minutes in a Year Total Uptime in a Year (%) % % % %
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 10 High Availability Challenges Challenges for Database High Availability –Database size is getting bigger and bigger –Database Backup Time A DLT tape writes 6 MB/Second, or 21 GB/hour A 2 TB database with one tape driver will take 97 hours to backup –Database Recovery Time –Is the backup good? –Trouble shooting time
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 11 High Availability Solutions Traditional High Availability Solutions –Backup and restore High Availability Solutions –Oracle Advanced Replication –Oracle Real Application Clusters (RAC) –Oracle Data Guard (Standby Database) –Oracle Streams
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 12 High Availability Solutions High Availability Solution means : –No Single Points-of –failure –Hardware Redundancy –Software Redundancy –Data Redundancy –Application Redundancy –More.. $ ? –Save Money
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 13 Oracle Advanced Replication Advanced Replication Overview Replication Components Types of Replication Environments Administration Tools for Replication
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 14 Advanced Replication Overview Replication is the process of copying and maintaining database objects, such as tables, in multiple database. Changes applied at one site are captured and stored locally before being forward and applied at each of the remote locations.
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 15 Replication Components Replication Objects –Table, Indexes, View –Procedures, Packages, Functions, Triggers –User-Defined Types Replication Groups –A collection of replication objects that are logically related. –Master group –Materialized view group
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 16 Replication Components Replication Sites –Master Sites –Materialized View Sites
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 17 Types of Replication Multimaster Replication –Each master site operates as an equal peer. –Provides complete replicas of each replicated table at each of the master sites. –Replicate changes for each transaction. –Two types of multimaster replication Asynchronous Synchronous
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 18
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 19 Types of Replication Materialized View Replication –Replicate subset of master table data –Batch-oriented operation (refresh) –3 types of materialized views Read-Only Updateable Writeable
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 20
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 21 Replication Administration Tools Oracle Enterprise Manager –Replication Manager Oracle-Supplied PL/SQL packages –DBMS_REPCAT Replication Catalog –On every master sites –Materialized view sites
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 22 Oracle Real Application Clusters (RAC) Real Application Clusters Overview Real Application Clusters Architecture Real Application Clusters Components Cache Fusion Transparent Application Failover (TAF)
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 23 Real Application Clusters Overview Multiple instances against the same database. Involves a cluster of nodes with access to a set of shared disks through Cluster Management Software (CMS). Oracle’s solution for system failures. Transparent Application Failover (TAF) Connection Load Balancing
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 24 Real Application Clusters Architecture
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 25
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 26 Real Application Clusters Components Shared Disk Vendor CMS Cluster Group Services Global Resource Directory RAC Background Process –LMON (Global Cache Service Process) –LMD (Global Enqueue Service Daemon) –LMS (Global Enqueue Service Monitor)
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 27 Cache Fusion Oracle’s Global Cache Management Technology. It provides cache to cache transfers of data blocks between instances in a cluster. It eliminates forced disk writes. Dynamic resource re-mastering
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 28 Transparent Application Failover (TAF) Little or no user downtime. Applications and users are automatically and transparently reconnected to another system. DML transactions are rolled back
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 29 Oracle Data Guard Data Guard History Data Guard Components Data Guard Roles Data Guard Interfaces Data Guard Process Architecture Data Guard Protection Mode
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 30 Data Guard History History of Standby Database –Oracle7.3: First Release of Standby Database –Oracle8i: Automatic shipping and application of redo logs –Oracle9i Release 1: Protection mode –Oracle9i Release 2: Logical standby database
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 31 Data Guard Components Primary Database Standby Database –Physical Standby Database –Logical Standby Database (9iR2 only) Log Transport Services Network Configuration Log Apply Services Data Guard Broker
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 32
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 33 Data Guard Roles A database can operate in one of the two mutually exclusive roles: Failover –One of the standby databases takes the primary database role Switchover –In Oracle9i, primary and standby database can continue to alternate roles
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 34 Data Guard Interface SQL*Plus and SQL Statements SQL> alter database commit to switchover to physical standby; Data Guard Broker GUI – Data Guard Manager Data Guard Broker Command-Line Interface $ dgmgrl DGMGRL for Solaris: Version Production. (c) Copyright 2002 Oracle Corporation. All rights reserved. Welcome to DGMGRL, type "help" for information. DGMGRL>
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 35 Process Architecture Physical/Logical Standby Processes –LGWR (Log Writer) process –ARCH (Archiver) process –LNS (LGWR Network Server) process –RFS (Remote File Server) process –MRP (Managed Recovery) process
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 36 Process Architecture Physical/Logical Standby Processes –FAL (Fetch Archive Log) Client process –FAL (Fetch Archive Log) Server process –LSP (Logical Standby) process –PX (Parallel Execution) process –DMON (Data Guard Broker Monitor) process
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 37 Physical Standby Processes Architecture
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 38 Logical Standby Processes Architecture
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 39 Data Protection Mode Oracle9i Release 2 has three data protection modes
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 40 Oracle Streams Oracle Streams Overview Oracle Streams Process Architecture Oracle Streams Rules Administration Tools for Oracle Streams
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 41 Oracle Streams Overview Oracle9i’s new replication product. Similar to logical standby database Changes are captured at source Database. Propagate information within a database or from one database to another. Using Message Queuing. Heterogeneous information sharing.
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 42 Oracle Streams Process Architecture Capture changes at a database. Enqueue events into a queue. Propagate events from one queue to another. Dequeue events. Apply events at a database.
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 43 Oracle Streams Processes Architecture
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 44 Oracle Streams Rules Rules are used to control which information to share and where to share it. Rules can be used during capture, propagate, and apply processes. Rules can define in three level: –Table –Schema –Global
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 45 Oracle Streams Administration Tools Oracle-Supplied PL/SQL packages –DBMS_STREAMS_ADM –DBMS_CAPTURE_ADM –DBMS_PROPAGATION_ADM –DBMS_APPLY_ADM Streams Data Dictionary views –DBA_APPLY –V$STREAMS_CAPTURE Oracle Enterprise Manager
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 46 Choose High-Availability Solution Product Licensing Unsupported Datatype Feature Comparison
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 47 Product Licensing High Availability ProductEnterprise Edition Advanced ReplicationIncluded Real Application ClustersAdditional License Fee Data GuardIncluded StreamsIncluded
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 48 Unsupported Datatype for Logical Standby and Streams Supported DatatypesUnsupported Datatypes CHAR, NCHAR VARCHAR2, NVARCHAR2 NUMBER DATE CLOB,BLOB RAW TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAAMP WITH LOCAL TIME ZONE INTERVAL YEAR TO MONTH INTERVAL DAY TO SECOND NCLOB LONG LONG RAW BFILE ROWID UROWID User-defined types Object types - REFS - Varrays - Nested tables
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 49 Feature Comparison Advanced Replication RACPhysical Standby Logical Standby Streams Entire Database Replication YESN/AYES Schema Replication YESN/ANO YES Table Replication YESN/ANO YES
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 50 Feature Comparison Advanced Replication RACPhysical Standby Logical Standby Streams DML Replication YESN/AYES DDL Replication YESN/AYES Instance Redundant YES Database Redundant YESNOYES
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 51 Feature Comparison Advanced Replication RACPhysical Standby Logical Standby Streams Cluster Management Software NOYESNO Failover Mechanism Manual Failover TAF Failover Switchover Failover Switchover Manual Failover Load Balancing YES Partial YES
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 52 Feature Comparison Advanced Replication RACPhysical Standby Logical Standby Streams Change Captured Local Remote Local Heterogeneous Database Support YESNO YES Datatype Support ALL SOME
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 53 Feature Comparison Advanced Replication RACPhysical Standby Logical Standby Streams OS Platform between source and Target Can be Different Must be Same Must be Same Must be Same Can be Different Oracle Version Between Source and Target Can be Different Must be Same Must be Same Must be Same Can be Different
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 54 Summary High Availability Concept High Availability Options –Advanced Replication –Real Application Clusters –Data Guard –Oracle Streams High Availability Product Comparison
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 55 References Oracle9i, Data Guard Concepts and Administration. Release 1 (9.0.1); Oracle9i, Data Guard Concepts and Administration. Release 2 (9.2); Oracle9i, Data Guard Broker. Release 2 (9.2); Oracle9i, Real Application Clusters, Concepts. Release 1 (9.0.1); Oracle9i, Advanced Replication. Release 2 (9,2); Oracle9i, Streams. Release 2 (9.2); Oracle Metalink Support; Top DBA Shell Scripts for Monitoring Database, Daniel T. Liu; DBAZine; I would also like to acknowledge the assistance of Larry Barry, Ann Collins, Archana Sharma and Husam Tomeh of FARES, and Larry Carpenter, Joseph Meeks, Roger Peterson of Oracle Corporation.
OracleWorld 2003, Paper #36693, Daniel T. Liu, FARES 56 Thanks For Coming !! Daniel Liu Contact Information Phone: (714) Company Web Site: