Use this script to initiate online off-host backup of an Oracle database.
#!/bin/ksh # # script: backup_online.sh <dbnode> # # Sample script for online, off-host backup. # # Note: This is not a production level script, its intention is to help # you understand the procedure and commands for implementing # an off-host point-in-time copy solution. export ORACLE_SID=dbase export ORACLE_HOME=/oracle/816 export PATH=$ORACLE_HOME/bin:$PATH dbnode=$1 dbasedg=dbasedg snapvoldg=snapdbdg newvollist="snap_dbase_vol source=dbase_vol/newvol=snap_dbase_vol" snapvollist="snap_dbase_vol" volsnaplist="snap_dbase_vol source=dbase_vol" exit_cnt=0 arch_loc=/archlog # Put the Oracle database in hot-backup mode; # see the backup_start.sh script for information. su oracle -c backup_start.sh # Refresh the snapshots of the volumes. # # Note: If the volume is not mounted, you can safely ignore the # following message that is output by the snapshot operation: # # ERROR: Volume dbase_vol: No entry in /etc/mnttab for volume vxsnap -g $dbasedg make $newvollist # Take the database out of hot-backup mode; # see the backup_end.sh script for information. su oracle -c backup_end.sh # Back up the archive logs that were generated while the database # was in hot backup mode (as reported by the Oracle Server Manager). # Move the snapshot volumes into a separate disk group. vxdg split $dbasedg $snapdg $snapvollist # Deport the snapshot disk group. vxdg deport $snapdg # The snapshots of the database can be imported and backed up # on the OHP node and then deported. # Note: Replace "rsh" with "remsh" on HP-UX systems. rsh $dbnode -c "do_backup.sh $snapvollist" # Import the snapshot disk group -- if the database disk group is # cluster-shareable, you must also specify the -s option. vxdg import $snapdg # Join the snapshot disk group to the original volume disk group. vxdg join $snapdg $dbasedg # Restart the snapshot volumes. for i in 'echo $snapvollist' do vxrecover -g $dbasedg -m $i vxvol -g $dbasedg start $i done # Reattach the snapshot volumes ready for the next backup cycle. vxsnap -g $dbasedg reattach $volsnaplist