Jump to content

RAC Attack - Oracle Cluster Database at Home/Setup Backups

From Wikibooks, open books for an open world


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



  1. Login to a terminal on collabn1 as the user oracle.
  2. 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


  3. 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.
  4. 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