02.Oracle/DataBase2009. 4. 24. 15:16
반응형
http://www.oracleclub.com/article/11368

현재는 삼성SDS에 근무중이신 양진석 DBA님께서 프로젝트 기간중에 직접 작성하신 내용들을 몰래(?) 빼내서 올립니다.


요즈음 한참 바빠서 자바쪽 강의를 계속 쉬고 있어 죄송하네요^^ 앞으로 계속 정진하도록 노력하겠습니다.


파일백업을 물리적으로 하는 방법도 있지만 전체를 백업받고 또 문제가 생겼을 때 그것이 아주 작은 문제라 하더라도 전체를 복구하고 ... 머 이런식으로 해도 되지만 이건 좀 문제가 있죠. 그래서 논리적 백업과 복구(export / import)를 가끔 해주시면 DB관리를 좀 더 효율적으로 해줄 수 있지 않을까 합니다.

정기기적으로 물리적인 백업을 해주시고, 주기적으로 아래처럼 테이블 단위의 논리적인 백업을 해주시면 좋을듯 싶습니다.


주의해서 보실 부분은 붉은 글씨 부분이며 여러가지 옵션은 검색을 하시거나 책을 보시면 자세히 나와 있습니다. 그리고 반대로 import는 문제가 생겼을 때 해주시면 되겠죠.


#!/bin/ksh

export ORACLE_HOME=/oracle

export NLS_LANG=American_America.KO16KSC5601

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/lib

export ORACLE_SID=UNIABS

DATE=`date '+%Y%m%d'`
LOG_FILE="/unidb3/export_backup/IRIS_Full_${DATE}.log"
DUMP_FILE="/unidb3/export_backup/IRIS_Full_${DATE}.dmp"

find /oracle2/orabackup/data/. -name "IRIS_Full*" -exec rm -fr {} \;
mknod /tmp/exp_IRIS p
compress </tmp/exp_IRIS> /unidb3/export_backup/IRIS_Full_${DATE}.dmp.Z &

echo `date` >> $LOG_FILE
#exp system/iris920 file=$DUMP_FILE full=y buffer=6000000 log=$LOG_FILE
exp system/iris920 file=/tmp/exp_IRIS full=y buffer=6000000 log=$LOG_FILE
# exp를 통신화일에 집어넣고 그 파일을 background로 compress한다.
echo `date` >> $LOG_FILE


양진석 DBA 께서 아주 간단한 내용이라고 하지만 저는 좀 어렵네요^^

Posted by 1010