>> Read Reply from No. 0 article  
RE: RE: RE: MySQL 모든 DB 백업하기 - 무식하고 빠른...

등록 2001-03-05 12:58:00     조회 5
이름 skyer9    

mysql 은 데이타베이스를 디렉토리와 화일형식으로 저장합니다.
그것을 이용하여 좀 무식하지만 빠른 백업방법을 소개합니다.
<pre>
[root@mexplorer /root]# cat backupdb.sh
#!/bin/bash
#
# 아래 방법은 무식한 mysql 백업 방법입니다. 그러나 빠르구요.
# 생성되는 화일은 20010305.tar.gz 와 같은 화일이 저장됩니다.
# 가장최근 화일만 저장되게 되어 있습니다. 만약 이전 백업을 유지하려면
# 맨 아래 for 문 부분을 삭제 하시면 됩니다.
# 백업하는 방법은
# mysql 을 정지시키고
# tar xvfzp /var/backup/20010305.tar.gz
# 로 하고 압축이 풀린 디렉토리에서 *.pid 와 *.sock 를 삭제하고 mysql 을 작동하시면 됩니다.
# 이 화일은 /etc/cron.daily 밑에 두시면 자동 백업됩니다.
 DATA_DIR=/var/lib/mysql
BACKUP_DIR=/var/backup
DATE=$(date +%Y%m%d)
 tar cvfzp $BACKUP_DIR/$DATE.tar.gz $DATA_DIR
 for i in $( ls $BACKUP_DIR ); do
    if [ -f $BACKUP_DIR/$i ]; then
        if [ $i != $DATE.tar.gz ]; then
            rm -f $BACKUP_DIR/$i
        fi
    fi
done
[root@mexplorer /root]#
</pre>
위 방법은 좀 편법인 방법이기도 하지만 데이타 용량이 크더라도
서버 백업부하를 적게 차지합니다.
    : 안녕하세요.
: 전체 모든 db를 백업할때는 --all-databases > 파일명 하시면 됩니다.
: ilubzzon
:
:
: : :
: : : <hr>
: : : #!/bin/bash
: : : BACKUP_DIR=/var/backup
: : : FILE_PFX =MY_DB
: : :
: : : DATE=$(date +%Y%m%d)
: : : OF = $FILE_PFX-$DATE.sql
: : : rm -rf $BACKUP_DIR/$FILE_PFX-*.sql
: : :
: : : mysqldump -uUSER -pPASS DB_NAME > $BACKUP_DIR/$OF
: : : <hr>
: : :
: : : 간단히 만들어 보았습니다.
: : : 백업데이타는 MY_DB-20010228.sql 이런식으로
: : : /var/backup 밑에 생깁니다.
: : :
: : : BACKUP_DIR 은 백업받고 싶은 디렉토리 이구요..
: : : FILE_PFX 은 저장할 파일 이름의 프리픽스 정도..
: : : 날마다 백업된걸 가지고 있고 싶으시면(충분한 하드용량이 된다면)
: : : rm -rf ........ 이줄은 주석처리해도 무방..
: : : mysqldump 다음은 알죠? 사용자명과 패스워드 DB명..
: : :
: : : /etc/cron.daily 밑에 복사해주시고..
: : : 실행 권한 주시면 됩니다.
: :
: : ----------------------------------------------------
: :
: : 안 돌아가는 머리 쥐어 짜면서 만들어 보았습니다.
: :
: : ------ /etc/cron.daily/mysqlcump.cron -------------------
: : #!/bin/sh
: : #
: : #
: : ## Chilbong, Kim <san2 at linuxchannel.net>
: : ## 2001.03.01
: : ## http://www.linuxchannel.net : : ##
: : ##
: : ###########################################
: : ##
: : ## This file name : "mysqldump.cron"
: : ## cp mysqldump.cron /etc/cron.daily/
: : ## chmod 700 /etc/cron.daily/mysqldump.cron
: : ##
: : ###########################################
: : ## user setting
: : ##
: : ##
: : mysql_host="localhost"
: : mysql_rootpasswd="xxxxxxx"
: : backupdir="/var/backup"
: : mysql_backupdir="${backupdir}/mysqldump"
: : mysql_dump="/usr/local/mysql/bin/mysqldump"
: : mysql_show="/usr/local/mysql/bin/mysqlshow"
: : ##
: : ## Are you compress 'xxxx-2001xxxx-xx.sql' ?
: : ##     1 = yes(xxxx-2001xxxx-xx.sql.gz)
: : ##     0 = no
: : db_compress="1"
: : ##
: : ## end user setting !!!
: : ############################################
: :
: : sysdtime=`date +%Y%m%d-%H`
: : mysql_connect="-h $mysql_host -u root -p$mysql_rootpasswd"
: : mysql_DBs=`$mysql_show $mysql_connect | egrep -v "(Databases|+)" | awk '{print $2}' 2>/dev/null`
: :
: : mysql_dump_work() {
: : 	mysql_each_DB="$1"
: : 	mysql_dump_file="${mysql_backupdir}/${mysql_each_DB}-${sysdtime}.sql"
: : 	$mysql_dump $mysql_each_DB > $mysql_dump_file
: : 	if [ "$db_compress" = "1" ] ; then
: : 		gzip -9 $mysql_dump_file
: : 	fi
: : }
: :
: : if [ "$mysql_DBs" != "" ] ; then
: :
: : 	if [ ! -d "$mysql_backupdir" ] ; then
: : 		mkdir -p "$mysql_backupdir"
: : 		chmod 700 "$mysql_backupdir"
: : 	fi
: :
: : 	for mysql_DB in $mysql_DBs ; do
: : 		mysql_dump_work $mysql_DB
: : 	done
: :
: : 	chmod -R 600 $mysql_backupdir
: : 	#chown -R root $mysql_backupdir
: :
: : fi
: :
: : exit 0
: : ----------------------------------------------------------------
: :
: : --
: : LinuxChannel.NET
:
: --
: emoticon
 --
서명이라..
이름
암호


>> 관련글
  답장 RE: RE: 추가 -- MySQL 모든 DB 백업하기...  lubzzon  2001.03.03  ....
  답장 RE: RE: RE: MySQL 모든 DB 백업하기 - 무식하고 빠른...  skyer9  2001.03.05  ....
  목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.88 초 ] 작업시간: [ 0.26 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791033909
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.