((아래는 말을 편히 하기위해서..^^
좀 건방지게 한 면이 없지 않습니다..
양해 부탁드리겠습니다..^^;;))
"백업에 실패한 개발자는 용서할 수 없다"
우리 사장님이 늘상 하시는 말씀이다.
나도 그렇다고 생각한다.
데이터, 코드를 날리고 백업을 하지 않아.
그만큼의 시간을 낭비한다는 것은 촉박을 다루는 프로그래머에게 아주 큰 실수이다.
어느 개발자나 개인적으로 백업 솔루션(?) 정도는 개발 하고 가지고 있어야 한다고 생각한다.
세상에 믿을건 나 밖에 없다..
회사에서 아무리 좋은 백업솔루션을 사용한다고 해도 파일 하나를 백업하기 위해서는
좀 많은 노력이 필요하게 된다.
수천개 수만개의 데이터를 백업하는데..
한개를 날렸다고 복구 솔루션을 돌리기는 부담스럽지 않은가..
나는 아래와 같은 백업 솔루션은 구성해 놓고 사용하고 있다.(유닉스환경)
File 1. bgback
이것은 cron을 지원하지 않는 시스템을 사용하기에..억지로 구성해 놓은것이다..ㄱ-;;
#! /usr/bin/ksh
while [ 1 ]
do
/koscom/accnt/usr/hkkim2/hkkim/bnkback
sleep 86400
done
File 2. upback
이것은 FTP로 다른 PC로 전송하기 위해 만든 것이다. 서버 관리자가 실수로 서버 날리는 경우가 생기지 않는다고 장담 할 수 없다..내가 서버 관리를 해도 나를 못 믿을 것이다.
나는 내가 사용하고 있는 개발용 PC로 전송한다..
내 PC하드가 깨지면 어떻하냐고?
설마 내 하드와 서버그리고 회사 백업솔루션이 동시에 날아갈까.ㅡ_ㅡ;;
만약 그렇다면 울어버리는거다..ㄱ-;;
echo "========================================"
echo " Open FTP Connection "
echo "========================================"
ftp -n xxx.xxx.xxx.xxx << EOF
user username password
put $1
rm work.tar.gz
put work.tar.gz
bye
EOF
echo "========================================"
echo " Close FTP Connection "
echo "========================================"
echo " Open FTP Connection "
echo "========================================"
ftp -n xxx.xxx.xxx.xxx << EOF
user username password
put $1
rm work.tar.gz
put work.tar.gz
bye
EOF
echo "========================================"
echo " Close FTP Connection "
echo "========================================"
File 3. bnkbackup
실행명 이름들이 왜 이렇냐고 따지지 마라.-_-
내맘이다..
우리는 은행업무를 하는 팀이기 때문에.
bnk라고 넣은것 뿐..;;
단순히 압축만 해버리는 일을 한다.
if [ $# -eq 1 ]
then
echo "======================================================"
echo " START BACKUP SHELL ($1)"
echo "======================================================"
cd ~/.backup/
tar -cvf $1 /koscom/accnt/usr/DP/bank
tar -cvf work.tar /koscom/accnt/usr/hkkim2/aps_bank
gzip $1
gzip work.tar
echo "======================================================"
echo " END BACKUP SHELL ($1)"
echo "======================================================"
else
echo "argc is not 1 ($#)"
fi
then
echo "======================================================"
echo " START BACKUP SHELL ($1)"
echo "======================================================"
cd ~/.backup/
tar -cvf $1 /koscom/accnt/usr/DP/bank
tar -cvf work.tar /koscom/accnt/usr/hkkim2/aps_bank
gzip $1
gzip work.tar
echo "======================================================"
echo " END BACKUP SHELL ($1)"
echo "======================================================"
else
echo "argc is not 1 ($#)"
fi
File 3. bnkbackup
이건 File2, File3을 이용해서 실재 실행하는 놈이다.
File1은 단지 FTP용일 뿐이고..
filename=Bnk_`date +%Y_%m_%d_%H%M%S`.tar
cd ~/.backup
~/hkkim/bnkbackup $filename >> ~/.backup/log/backup.log
~/hkkim/upback $filename.gz >> ~/.backup/log/backup.log
rm -fr *.gz
cd ~/.backup
~/hkkim/bnkbackup $filename >> ~/.backup/log/backup.log
~/hkkim/upback $filename.gz >> ~/.backup/log/backup.log
rm -fr *.gz
현재는 DB백업하는 일이 없기때문에 단순하다..
그리고 나라는 놈은 쓸대 없이 프로그램을 많이 나누어 놨따.ㅋㅋ
모 만든 사람 맘이지..-_-;;
'컴퓨터 이야기' 카테고리의 다른 글
find를 이용한 스크립트. (0) | 2007.02.08 |
---|---|
내가 쓰는 ORACLE.. (2) | 2007.02.08 |
내가 쓰고 있는 .vimrc (0) | 2007.02.05 |
(표준화)데이터 용어사전의 필요성. (0) | 2006.12.05 |
Programing에 대해서 주저리주저리 (1) | 2006.12.01 |