BLOG main image
정민군's Blog
miniya devlog

'Language/ShellScript'에 해당되는 글 1건

  1. 2006.10.17 DB, Table 별 Backup

DB, Table 별 Backup

Language/ShellScript 2006. 10. 17. 21:27 by 정민군
각 디비별 테이블별 시간별로 백업 받는 쉘 스크립트입니다.
샐행파일을 ~/bin 디렉토리에 넣어서 실행하면
../디비명/테이블명/03h.db 파일로 백업을 받습니다.
테이블별로 백업 받기 때문에 복구 하기도 간편하죠 ^^

물론 해당 디렉토리에 쓰기 가능한 퍼미션을 주어야 겠죠.

실행 화일을 크론을 걸어 두면 좋겠죠^^
크론에 대한 설명은 이곳에 아주 잘 나온것 같아서 생략합니다.

backup.sh 파일명.

#!/bin/ksh

HOST="localhost"
ID="id"                                             # 마스터 아이디
PWD="passwd"                                # 마스터 비밀번호
DBS="db1 db2 db3 db4 ....."               # 백업 받고자 하는 디비명

PATH=`dirname $0`                           # 현재의 디렉토리 PATH를 설정해줌.
MYDIR="/usr/local/mysql/bin/"         # MySql 실행화일 디렉토리

MYSQL="${MYDIR}/mysql -h ${HOST} -u ${ID} -p${PWD} "
DUMP="${MYDIR}/mysqldump -h ${HOST} -u ${ID} -p${PWD} "
SHOW="${MYDIR}/mysqlshow -h ${HOST} -u ${ID} -p${PWD} "
HOUR=`/bin/date +"%H"`                    # 백업받고 있는 현재 시간 => 나중에 파일 명이 됨.
                                                     # 날짜로 설정하고 싶으면 HOUR=`/bin/date +"%d"` 로 해주면 됩니다.  
function show
{

       DIR="${PATH}/../${DB}"                    
       [ -d  ${DIR} ] || /bin/mkdir $DIR                # 디비별 디렉토릭 생성

       if [ -f ${MYDIR}/mysqlshow ]                    # 특정 디비내의 테이블 불러오기
       then
               TB=`$MYSQL $DB -e "show tables" | /bin/grep -v Tables_in_${DB} `
       fi

       for TMPTB in $TB
       do
                       
              TBDIR="${DIR}/${TMPTB}"
              [ -d $TBDIR ] || /bin/mkdir $TBDIR             # 테이블별 디렉토리 생성

              $DUMP $DB $TMPTB > $TBDIR/${HOUR}h.db   # 시간설정 테이블 백업 받기
               
       done

}

for DB in $DBS
do
       show
done


#$DUMP $DB $TABLE > ${PATH}/../${DB}/${TABLE}${HOUR}h.db
1 

카테고리

분류 전체보기 (46)
Technic (5)
Language (16)
Java (8)
ShellScript (1)
PHP (2)
DHTML (3)
VB (1)
WAP (1)
Database (8)
System (5)
Algorithm (1)
Design (1)
Tool (3)
Framework (2)
Network (1)
Utility (1)
SmartPhone (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

달력

«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

글 보관함