windows용 오라클 온라인 백업 스크립트
2010.07.01 22:13
원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어
Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
원문 : http://www.ischo.net -- 조인상 //시스템 엔지니어
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
비대화식으로 백업스크립트를 만들어서 '예약된 작업'에 등록하여 자동화시킨다.
두개의 파일을 만듬.
1. 윈도우 쉘 스크립트 - online.bat
2. 오라클 백업 스크립트 - online.sql
백업환경
오라클 데이터파일 위치 : e:\oradata\insa --> e:\backup\oradata\insa
오라클 아카이브로그 위치 : e:\arch --> e:\backup\arch
1. 윈도우 쉘스크립트 - online.bat
del /q e:\backup\oradata\insa\*.* // 기존 데이터파일 삭제
del /q e:\backup\control\control*.* // 기존 컨트롤파일 삭제
sqlplus "/ as sysdba" @ e:\backup\script\online.sql // 온라인백업 스크립트 시작
e:\backup\script\cleandrive.exe e:\arch 7 // 7일 이상된 아카이브 삭제(cleandrive.exe 유틸은 첨부파일에)
e:\backup\script\cleandrive.exe e:\backup\arch 7 // 7일 이상된 아카이브 삭제
copy /y e:\arch\*.* e:\backup\arch // 로그스위치 완료후 아카이브로그 백업
2. 오라클 백업 스크립트 - online.sql
alter system switch logfile; // 아카이브 로그 강제 스위치
alter database begin backup;
host copy e:\oradata\insa\*.* e:\backup\oradata\insa\;
alter database end backup;
alter database backup controlfile to 'e:\backup\control\control01.ctl';
alter database backup controlfile to 'e:\backup\control\control02.ctl';
alter database backup controlfile to 'e:\backup\control\control03.ctl';
alter system switch logfile; // 아카이브 로그 강제 스위치
quit;
이 스크립트를 만들기 이전에 반드시 오라클 엔진을 cold backup 받아 놓는다.