웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
mysql DB 주기적 자동 백업 하기
2003.04.04 04:56
이 방법은 서버 관리자님들에게 해당 될수 있겠군요 ..
SSH . TELNET 이 허용돼는 서버에서도 잘 활용하면
유저도 자동 백업을 할수 있겠군요 ..
보통 DB 백업이라고 하면 mysqldump 가 떠올려지는데
저는 cron 을 이용하여 그냥 db 디렉토리 통채로 압축하여
백업 파티션에 놔두는것을 설명 하고자 합니다..(무식하죠? ^^)
db_backup.sh 라는 스크립트를 만듭니다.
#!/bin/sh
dat=`date +%Y%m%d`
tar zfc /backup/mysql_$dat.tar.gz /data
// 저는 파티션 나눌때 sql /data 파티션을 따로 만들어 줬습니다.. 보통은 /var/db/mysql 에 db 디렉토리 일꺼에요 (freebsd)
chmod 600 /backup/mysql_$dat.tar.gz
라고 스크립트를 작성하신후 이 스크립트를
#chmod 100 db_backup.sh
라고 한후
|* /data 디렉토리에 있는 db 디렉토리들을 tar 로 압축하여 /backup 디렉토리에 mysql_날짜.tar.gz 로 저장하고
그 저장한 압축파일 권한을 600 으로 만든다는 스크립트입니다..
그런 다음 cron 에 등록 시켜 줘야 겠죠?
#crontab -e
00 05 * * * db_backup.sh
매일 새벽 5시에 db 백업 스크립트를 실행 하라는 뜻입니다..
cron daily 디렉토리에 넣어서 실행 되게끔 해주셔도 되겠죠
이렇게 하면 매일 5시에 백업을 하게 됩니다.. 백업된 파일들이
2일 이상 아무 접근이 없을때 자동 삭제 되게끔 해주시면 더 깔끔하겠죠?
마찬가지로 스크립트를 하나 만듭니다..
#!/bin/sh
find /backup -ctime +2 -exec rm -f {} ;
하신후 역시 chmod 100 으로 권한 설정후
크론에 등록을 시켜 주시면 됩니다..
이렇게 하므르서 추후 문제가 생겼을때 압출을 풀어 그냥 해당 돼는 폴더를 덮어 씌우기만 하면됩니다.
용량도 크리 많이 차지 하지 않을꺼라 생각합니다..
잘못된 점이 있으면 지적해주시기 바랍니다..
SSH . TELNET 이 허용돼는 서버에서도 잘 활용하면
유저도 자동 백업을 할수 있겠군요 ..
보통 DB 백업이라고 하면 mysqldump 가 떠올려지는데
저는 cron 을 이용하여 그냥 db 디렉토리 통채로 압축하여
백업 파티션에 놔두는것을 설명 하고자 합니다..(무식하죠? ^^)
db_backup.sh 라는 스크립트를 만듭니다.
#!/bin/sh
dat=`date +%Y%m%d`
tar zfc /backup/mysql_$dat.tar.gz /data
// 저는 파티션 나눌때 sql /data 파티션을 따로 만들어 줬습니다.. 보통은 /var/db/mysql 에 db 디렉토리 일꺼에요 (freebsd)
chmod 600 /backup/mysql_$dat.tar.gz
라고 스크립트를 작성하신후 이 스크립트를
#chmod 100 db_backup.sh
라고 한후
|* /data 디렉토리에 있는 db 디렉토리들을 tar 로 압축하여 /backup 디렉토리에 mysql_날짜.tar.gz 로 저장하고
그 저장한 압축파일 권한을 600 으로 만든다는 스크립트입니다..
그런 다음 cron 에 등록 시켜 줘야 겠죠?
#crontab -e
00 05 * * * db_backup.sh
매일 새벽 5시에 db 백업 스크립트를 실행 하라는 뜻입니다..
cron daily 디렉토리에 넣어서 실행 되게끔 해주셔도 되겠죠
이렇게 하면 매일 5시에 백업을 하게 됩니다.. 백업된 파일들이
2일 이상 아무 접근이 없을때 자동 삭제 되게끔 해주시면 더 깔끔하겠죠?
마찬가지로 스크립트를 하나 만듭니다..
#!/bin/sh
find /backup -ctime +2 -exec rm -f {} ;
하신후 역시 chmod 100 으로 권한 설정후
크론에 등록을 시켜 주시면 됩니다..
이렇게 하므르서 추후 문제가 생겼을때 압출을 풀어 그냥 해당 돼는 폴더를 덮어 씌우기만 하면됩니다.
용량도 크리 많이 차지 하지 않을꺼라 생각합니다..
잘못된 점이 있으면 지적해주시기 바랍니다..
댓글 8
-
FriZeX
2003.04.13 01:03
그렇지만 이 데이터를 윈도 MySQL에서 쓰지 못한다는 단점이 있습니다; -
갸륵한놈
2003.04.04 07:51
cron 등록할때 텔넷에서 하는거죠? 근데 텔넷에서 입력창은 한줄인데
#!/bin/sh
find /backup -ctime +2 -exec rm -f {} ;
이 두줄을 어떻게 입력하죠? (참고:저는 초보중에 초보 ㅡㅡ) -
작은바램™
2003.04.04 11:10
스크립트를 작성하는 겁니다.
Vi 편집기나 PiCO를 쓰는거죠...
그리고 #문은 주석입니다. 단순히 쉘스크립트파일이라는 걸 의미하는 겁니다. -
갸륵한놈
2003.04.04 12:43
권한을 600 으로 주는 이유는 뭔가요? -
울愛 지기
2003.04.04 16:25
추천 합니다. 잘배웠습니다. -
Dopesoul
2003.04.05 01:32
자기만 쓰려고 600 주는것이죠^^; 700 줘도 그만입니다. -_-; -
마컴학
2004.01.14 10:43
전부 한꺼번에 볼수 없을까요?
확복사해서 쓸쑤 있도록 해주심 감사하겠습니다.
그리고
너무 초보라서 죄송합니다.
스크립트를 어디에 넣어 놓으면 되는가요?
클론은 어떻게 실행하는지 어디에 놓아야 하는지 ? -
HoYa™
2004.02.18 09:30
FriZeX // cygwin 이용하면 쓸수 있음
제목 | 글쓴이 | 날짜 |
---|---|---|
[진자 유용한] www 자동으로 붙여주기 [6] | Dopesoul | 2003.05.24 |
[간단팁] 윈도우즈 2003 에서 mysql 사용할때.. [5] | 오종선 | 2003.05.22 |
ie60이상버전의 개인정보기능으로 인한 서비스문제 [2] | 날파리 | 2003.05.21 |
한컴 리눅스 2.2 apach php mysql phpmyadmin zeroboard 서버구축기 예전에 쓴글 약간 수정판 입니다. [6] | 한돌 | 2003.05.19 |
IIS 5.0 WebDAV Buffer Overflow 취약점에 대한 공격빈도 증가 | DearMai | 2003.05.17 |
커널에러 복구 하기~~~ [5] | 서인구 | 2003.05.11 |
윈도2000 서버에서 DNS 서버 운영하기 | DearMai | 2003.05.10 |
apache 98 % 활용하기 ! (윈도우버젼) [13] | 이성헌 | 2003.05.09 |
DNS서버 만들기 [4] | 제르디스™ | 2003.05.04 |
NSLOOKUP 으로 서브도메인과 메일서버 알아보기 [6] | 환군+ | 2003.05.02 |
MASQUERADE 클라이언트 IP 자동으로 부여해주기 [1] | 엔포게이트 | 2003.05.01 |
MASQUERADE 클라이언트 컴퓨터 인터넷 되게..^^; [4] | 김도진 | 2003.04.25 |
APM_Setup4에서 CGI 쉽게 설치하기 [3] | RedEye | 2003.04.14 |
(더 성공률 높은)Apache에서 ASP돌리기(초간다안!!) [6] | okw1003 | 2003.04.09 |
mysqldump를 이용해서 원하는 조건의 record만 뽑아내기 [2] | 겨울늑대 | 2003.04.08 |
mysql DB 주기적 자동 백업 하기 [8] | 김령현 | 2003.04.04 |
md5 암호화 알고리즘을 488bit blf 알고리즘으로 바꾸기 [17] | 김령현 | 2003.04.04 |
센드메일 에라타.. | 선장 | 2003.04.01 |
특정 유저만 su root 허용 | 군고구마 | 2003.04.01 |
서버의 아파치보안 테스트 해보세요 [12] | 김령현 | 2003.03.26 |