Wednesday, March 18, 2009

Hot Backup

In Windows: -

set head off
set feedback off
set term on
prompt HOT BACKUP in progress .....
set term off
alter database begin backup;
spool c:\dbcopy.bat
select 'copy '||name||' C:\HOTBACKUP' from v$datafile;
select 'copy '||name||' c:\HOTBACKUP' from v$tempfile;
spool off
host md c:\HOTBACKUP
host c:\dbcopy.bat
set term on
host del c:\dbcopy.bat
alter database backup controlfile to 'c:\HOTBACKUP\control_bak.ctl';
alter database end backup;
alter system switch logfile;
prompt HOT BACKUP successfully completed.
set head on
set feedback on

In Linux: -

set head off
set feedback off
set term on
prompt HOT BACKUP in progress .....
set term off
alter database begin backup;
spool /u01/app/oracle/dbcopy.bat
select 'copy '||name||' /u01/app/oracle/HOTBACKUP' from v$datafile;
select 'copy '||name||' /u01/app/oracle/HOTBACKUP' from v$tempfile;
spool off
host md /u01/app/oracle/HOTBACKUP
host /u01/app/oracle/dbcopy.bat
set term on
host del /u01/app/oracle/dbcopy.bat
alter database backup controlfile to '/u01/app/oracle/HOTBACKUP/control_bak.ctl';
alter database end backup;
alter system switch logfile;
prompt HOT BACKUP successfully completed.
set head on
set feedback on