RAC Attack - Oracle Cluster Database at Home/Setup Backups

During this lab we will intentionally misconfigure the cluster database backups and make some common mistakes with local, non-shared storage.

 Login to a terminal on collabn1 as the user oracle.

 On collabn1 create a directory /u01/app/oradata and try to configure it as the Flash Recovery Area (FRA) through the init param db_recovery_file_dest. The operation will fail.

collabn1:/home/oracle[RAC1]$ mkdir /u01/app/oradata collabn1:/home/oracle[RAC1]$ ss SQL*Plus: Release 11.1.0.6.0 - Production on Mon May 4 07:39:57 2009 SQL> show parameter recovery_file NAME                           TYPE        VALUE --- --- -- db_recovery_file_dest          string      +FRA db_recovery_file_dest_size     big integer 4000M SQL> alter system set db_recovery_file_dest='/u01/app/oradata'; alter system set db_recovery_file_dest='/u01/app/oradata' * ERROR at line 1: ORA-32008: error while processing parameter update at instance RAC2 ORA-02097: parameter cannot be modified because specified value is invalid ORA-01261: Parameter db_recovery_file_dest destination string cannot be translated ORA-01262: Stat failed on a file destination directory Linux Error: 2: No such file or director

 Now create the directory on the remote node and re-run the operation. This should succeed but it is still a poor configuration; we will investigate the reasons later in this lab.

SQL> host ssh collabn2 mkdir /u01/app/oradata SQL> alter system set db_recovery_file_dest='/u01/app/oradata'; System altered.

 Shutdown the database across the cluster. Then mount it on collabn1 and put the database into archivelog mode. No archivelog destination is assigned – where will the archivelogs go and why?

collabn1:/home/oracle[RAC1]$ srvctl stop database -d RAC collabn1:/home/oracle[RAC1]$ srvctl status database -d RAC Instance RAC1 is not running on node collabn1 Instance RAC2 is not running on node collabn2 collabn1:/home/oracle[RAC1]$ ss SQL*Plus: Release 11.1.0.6.0 - Production on Mon May 4 09:08:01 2009 SQL> startup mount SQL> alter database archivelog; Database altered. SQL> alter database open; collabn1:/home/oracle[RAC1]$ srvctl start database -d RAC

