Oracle Real Application Cluster training 11g

In April 2012 a new Oracle Real Application Cluster training is scheduled. The following topics will be covered during this 5 days training in Nieuwegein, The Netherlands.

Introduction Cluster en Real Application Cluster

Installation and configuration of Grid Infrastructur

Installation and configuration of Database instances

Architecture RAC RDBMS and management of RDBMS instances.

Architecture Oracle Clusterware and management of Clusterware

Architecture Cache Fusion

Performance and TuningWorkload Management

Server Pools

Upgrading and Patching

Troubleshooting

For more information check out: GRID-IT Trainingen

Location the Netherlands, Nieuwegein. Date 16 until 20 April 2012

Posted in GRID Infrastructure, Real Application Cluster, Training | Leave a comment

Minimize data loss during failover

One of the statements that is not well known, but introduced in Oracle 11gR2 is the flush of the redo. For Oracle Data Guard a flush of the redo in case of a failover can be very useful. If this statement is successful executed the last redo is applied on the standby and there will be no data loss.

To execute the statement the Redo apply on standby must be active and the primary database where you execute the statement must be mounted and not open. Default confirm apply is part of the statement and will wait until all the redo is applied.

If the primary database is open read/write you will receive an error message:

SQL> alter system flush redo to ‘proda’;

alter system flush redo to ‘proda’

*

ERROR at line 1:

ORA-16445: Database has to be mounted and cannot be open

Restart the database in mount mode and execute the statement.

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup mount
ORACLE instance started.
Total System Global Area 456146944 bytes
Fixed Size 1345604 bytes
Variable Size 444598204 bytes
Database Buffers 4194304 bytes
Redo Buffers 6008832 bytes
Database mounted.

SQL> ALTER SYSTEM FLUSH REDO to ‘PRODA’;

System altered.

Now you can execute the failover statement using sqlplus or the data guard broker.

In the alert.log of the primary database you will notice the End-of-Redo is send, this is indicating no data is lost and a failover can be executed.

ALTER SYSTEM FLUSH REDO TO ‘PRODA’ CONFIRM APPLY
ALTER SYSTEM FLUSH REDO TO PRODA CONFIRM APPLY [Process Id: 27807] (proda)
ARCH: STARTING ARCH PROCESSES
ARC0 started with pid=24, OS id=27885
ARC0: Archival started
ARCH: STARTING ARCH PROCESSES COMPLETE
ARC0: STARTING ARCH PROCESSES
ARC1 started with pid=25, OS id=27887
ARC2 started with pid=26, OS id=27889
ARC3 started with pid=27, OS id=27891
ARC1: Archival started
ARC2: Archival started
ARC1: Becoming the ‘no FAL’ ARCH
ARC1: Becoming the ‘no SRL’ ARCH
Flush redo: No wait for non-current ORLs to be archived
Waiting for all FAL entries to be archived…
All FAL entries have been archived.
Waiting for dest_id 2 to become synchronized…
ARC2: Becoming the heartbeat ARCH
2012-02-07 10:39:44.948000 +01:00
ARC3: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
Active, synchronized flush redo target has been identified
Managed Real Time Apply recovery running at physical standby ‘LOG_ARCHIVE_DEST_2′
Flush End-Of-Redo Log thread 1 sequence 607 has been fixed
Flush Redo: Primary highest seen SCN set to 0×0.0x9d05c1
ARCH: Noswitch archival of thread 1, sequence 607
ARCH: End-Of-Redo Branch archival of thread 1 sequence 607
ARCH: LGWR is scheduled to archive destination LOG_ARCHIVE_DEST_2 after log switch
ARCH: Standby redo logfile selected for thread 1 sequence 607 for destination LOG_ARCHIVE_DEST_2
Flush End-Of-Redo Log thread 1 sequence 607
Archived Log entry 1038 added for thread 1 sequence 607 ID 0x7943e1d0 dest 1:
ARCH: Archiving is disabled due to current logfile archival
Primary will wait for PRODA standby to have applied all redo
Final check for a target standby that has recovered all redo. Check will be made a few times.
LOG_ARCHIVE_DEST_2 is a potential flush redo target
LOG_ARCHIVE_DEST_2 has also applied all redo from primary
Active, synchronized target has been identified that has applied all the redo from the primary.
Flush Redo: Primary redo moved to standby

Posted in Data Guard, Training | Leave a comment

Statspack in RAC One Node cluster.

During a RAC one node project configuration, statspack was required as the customer didn’t have the license for EM tuning pack. So time to execute the spcreat.sql from the $ORACLE_HOME directory to install the perfstat user. Second part was to execute the spauto.sql to start collecting snapshots each hour. To complete the configuration a purge job was defined and we were done.

Well, this is correct but not for RAC One node. Using $ORACLE_HOME/rdbms/admin/spreport as perfstat user, would create a report until a relocate is executed. When you perform a relocate and try to generate a report it fails with:

Continue reading

Posted in GRID Infrastructure, Real Application Cluster, Training | Leave a comment

Oracle Data Guard 11gR2 Training

Oracle Data Guard 11gR2 Admin covers, among other topics:

Data Guard architecture
Configure Physical Standby Database using Network-based copy
Configure and manage Active Data Guard
Configure and manage Snapshot Standby
Data Guard Protection modes
Concept Switchover and execute a switchover.
Concept Failover
Configure and manage Data Guard Broker
Data Guard and Oracle Enterprise Manager.
Troubleshouting

For more information check out: GRID-IT Trainingen

Location the Netherlands, Nieuwegein. Date 26,27 and 28 March 2012

Posted in Data Guard, Training | Leave a comment

Upgrade an Oracle Primary – Physical standby database

INTRODUCTION

Purpose of this document is to guide the reader trough the steps of upgrading an Oracle Database to a higher release when a Physical Standby database is in place.  In this example we use an Oracle RDBMS 11.2.0.1 release that is upgraded to 11.2.0.3.

Starting point is a configured Oracle Data Guard environment, managed by Data Guard broker release 11.2.0.1.

STEP 1: DATABASE Software

We are installing the new Oracle software release in its own $ORACLE_HOME for this upgrade, we use the out placement principle. This step can be done in advance before we start the upgrade. Follow the Oracle installation manual to install the software and select the software-only installation.

Continue reading

Posted in Data Guard, Training | Leave a comment

Startup trigger example for Oracle Active Data Guard and Snapshot Standby

Recently I implemented an Oracle Active Data Guard (ADG) configuration for a customer. The below post is based on a service behavior seen during this configuration.

To have full functional benefit of ADG a service prodread, will only be active when the database role: standby database read only with real time apply is defined. But beside the prodread service also defined a service for the primary database prod and in case a snapshot standby is required prodsnap.

Initial create the services using the below statements:

execute dbms_service.create_service(service_name=>’prod’,network_name=>’prod’);
execute dbms_service.create_service(service_name=>’prodsnap’,network_name=>’prodsnap’);
execute dbms_service.create_service(service_name=>’prodread’,network_name=>’prodread’);

Next step is to create a startup trigger which will be validated when the database is started. Also the DB_ROLE_CHANGE trigger can be used, but this will only be validated if a role change occurs. A trigger is not required in an GRID Infrastructure environment when a service is defined and the database role is an attribute of the database resource.

Continue reading

Posted in Data Guard, GRID Infrastructure, Training | Leave a comment

OSWatcher action script modified version

During an Oracle 11gR2 Real Application Cluster project I introduced OS Watcher, as collecting OS information by default can be useful in case of problems. More information about OSWatcher MOS: OS Watcher User Guide [ID 301137.1]. To start the collection automatically a resource is added to the Oracle Clusterware layers with crsctl, the statement used is:

$ORACLE_HOME/bin/crsctl add resource oswatcher$HOST -type cluster_resource -attr \”ACTION_SCRIPT=/home/oracle/osw/OSW_ActionScript.sh, SERVER_POOLS=*, RESTART_ATTEMPTS=3, CHECK_INTERVAL=30, PLACEMENT=’restricted’, HOSTING_MEMBERS=$HOST\”"

After some further investigation, in the crsd logfile I found out when a resource is started and returned, the clusterware agent will start immediate the check procedure to validate if it is really running and this is done within a time frame of milliseconds after the start. This is correct behavior for Oracle Clusterware, but didn’t expect the time frame was very short and not earlier seen in pre 11gR2 releases.

Continue reading

Posted in GRID Infrastructure, Real Application Cluster | Tagged , | Leave a comment

Oracle Real Application Cluster 11gR2 training

In Februari 2012 a new Oracle Real Application Cluster training is scheduled. The following topics will be covered during this 5 days training in Nieuwegein, The Netherlands.

Introduction Cluster en Real Application Cluster

Installation and configuration of Grid Infrastructur

Installation and configuration of Database instances

Architecture RAC RDBMS and management of RDBMS instances.

Architecture Oracle Clusterware and management of Clusterware

Architecture Cache Fusion

Performance and TuningWorkload Management

Server Pools

Upgrading and Patching

Troubleshooting

For more information check out: GRID-IT Trainingen

Location the Netherlands, Nieuwegein. Date 13 until 17 Februari 2012

Posted in GRID Infrastructure, Real Application Cluster, Training | Leave a comment

Diskmon default offline in 11.2.0.3

After installation of the 11.2.0.3 GRID Infrastructure release started to look for new stuff. The first think I noticed was the offline status of diskmon. When no Exedata is used diskmon will be offline by default.

Diskmon is used for Exadata fencing.

[oracle@server1 ~]$ crsctl stat res -t -init
——————————————————————————–
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
——————————————————————————–
Cluster Resources
——————————————————————————–
ora.asm
1        ONLINE  ONLINE       server1                  Started
ora.cluster_interconnect.haip
1        ONLINE  ONLINE       server1
ora.crf
1        ONLINE  ONLINE       server1
ora.crsd
1        ONLINE  ONLINE       server1
ora.cssd
1        ONLINE  ONLINE       server1
ora.cssdmonitor
1        ONLINE  ONLINE       server1
ora.ctssd
1        ONLINE  ONLINE       server1                  ACTIVE:0
ora.diskmon
1        OFFLINE OFFLINE                       <=======
ora.drivers.acfs
1        ONLINE  ONLINE       server1
ora.evmd
1        ONLINE  ONLINE       server1
ora.gipcd
1        ONLINE  ONLINE       server1
ora.gpnpd
1        ONLINE  ONLINE       server1
ora.mdnsd
1        ONLINE  ONLINE       server1

Posted in GRID Infrastructure, Real Application Cluster, Uncategorized | Leave a comment

Seminar: Implementing and using Automatic Storage Management

Location: Nieuwegein, Netherlands, Duration: 1 day, When: 2 December, Price: 475,00 euro excl. V.A.T.

Seminar Description:
Oracle Automatic Storage Management is introduced some years ago in Oracle 10g. If you are working with Automatic Storage Management setup,configuration and understanding how Automatic Storage Management works is very important to be able to manage this product correctly. Especially in High Availability environments managing ASM will introduce new challanges and knowledge. In this seminar we will start with the architecture, how to implement and how does it work. When the basic part of ASM is discussed we will go into more details looking inside Automatic Storage Management. When these parts are discussed remaining questions like troubleshooting, performance issue and best practice will be handled. During the Seminar Oracle 11g Release 2 will be in discucced.

Continue reading

Posted in Automatic Storage Management, Real Application Cluster, Training | Tagged , , | Leave a comment