[MySQL,windows] 작업스케줄러를 이용한 MySQL백업 및 데이터 삭제

1.MySQL의 데이터베이스를 매월 첫번째 일요일 오전 00:01분에 백업하는 예제
1-1. 스케줄러 등록 커멘드
SCHTASKS /Create /SC MONTHLY /MO first /D SUN /ST 00:01 /TN MySQL_BackUp /TR D:\db_bakup\bakup.bat
[풀이]
/Create : 스케줄러 신규
/SC MONTHLY : 매월
/MO fist : 첫번째
/D SUN : 일요일
/ST 00:01 : 스타트 시간은 오전00:01분
/TN MySQL_BackUp : 스케줄러 이름
/TR D:\db_bakup\bakup.bat : 실행할 프로그램의 경로 및 파일 이름

1-2.bakup.bat 배치파일 내용
@echo off
echo Start Bakup…
mysqldump -u사용자명 -p비밀번호 –result-file=”D:\db_bakup\backup.%date%.sql” 데이터베이스명
echo End Bakup…
2.위에서 백업을 한후 현시점으로해서 1개월 이전의 데이터를 매월 첫번째 일요일 오전 00:10분에 지우기 예제
2-1. 스케줄러 등록 커멘드
SCHTASKS /Create /SC MONTHLY /MO first /D SUN /ST 00:10 /TN MySQL_Delete /TR D:\db_bakup\data_del.bat
[풀이]
1.번과 동일
2-2. data_del.bat 배치파일 내용
mysql -u유저ID -p유저패스워드 데이터베이스명 -e “delete from 테이블명 where 날짜컬럼 <= date_sub(curdate(), INTERVAL 1 MONTH);”
[풀이]
-e “delete from 테이블명 where 날짜컬럼 <= date_sub(curdate(), INTERVAL 1 MONTH);”
: 실행 시킬 커맨드

Leave a Reply

Your email address will not be published. Required fields are marked *