MySQL의 정기적인 백업은 중요한 작업이지만 수동 작업이 너무 번거롭고 누락을 피하기가 어렵습니다. 시스템이 정기적으로 데이터를 백업하도록 하려면 다음과 같은 방법을 사용하십시오.
◆1. 백업 폴더를 생성합니다.
#cd /www
#makedir 백업
◆2.실행 스크립트를 작성합니다.
#vi 자동 백업
다음을 작성하세요.
파일 이름=`date +%Y%m%d`
mysql_bin_dir/mysqldump –opt 데이터 이름 -u user -ppassword gzip > /www/mysqlbackup/name$filename.gz
저장하고 종료
설명하다:
(1) mysql_bin_dir: mysql의 bin 경로;
(2)데이터 이름: 데이터베이스 이름;
(3)사용자: 데이터베이스 사용자 이름;
(4)비밀번호: 사용자 비밀번호;
(5)이름: 백업 파일 접두사 식별자를 사용자 정의합니다.
위의 예와 같이 mysql 데이터베이스는 자동으로 백업되어 gzip 압축으로 저장되며 파일 이름은 name20080101.gz입니다.
◆3.스크립트에 실행 권한을 추가합니다.
#chmod +x 자동 백업
◆4. crontab이 정기적으로 실행되는 작업을 완료하도록 합니다.
이 단계에서는 Redhat의 방법이 달라지며 이에 대해서는 나중에 설명하겠습니다.
크론탭 편집:
#vi /etc/crontab
마지막 줄에 다음을 추가합니다.
01 5 * * * 루트 /www/autobackup
매일 5시에 스크립트를 실행합니다. 5를 다른 지정된 시간으로 수정할 수도 있습니다.
레드햇 방법:
Redhat의 crontab은 시간을 기준으로 4개의 디렉토리를 사용합니다(/etc/cron.hourly: 매시간; /etc/cron.daily: 매일; /etc/cron.weekly: 매주; /etc/cron.monthly: 매월). 스크립트가 실행되는 방식.
Redhat에서는 방금 편집한 스크립트를 해당 디렉터리에 복사하기만 하면 됩니다.
◆5.크론탭을 다시 시작합니다.
#/etc/rc.d/init.d/crond 재시작