MySQL 백업 · 2 min read · Jan 26, 2026
AutoMySQLBackup로 MySQL 백업 만들기
AutoMySQLBackup로 MySQL 백업 만들기
버전 1.0
저자: Falko Timme
AutoMySQLBackup는 mysqldump를 사용하여 MySQL 데이터베이스의 일일, 주간 및 월간 백업을 수행할 수 있는 셸 스크립트입니다. 여러 데이터베이스를 백업하고, 백업을 압축하고, 원격 데이터베이스를 백업하며, 로그를 이메일로 보낼 수 있습니다.
이것이 귀하에게 작동할 것이라는 보장은 하지 않습니다!
1 사전 참고
AutoMySQLBackup는 mysqldump를 사용하여 데이터베이스의 SQL 덤프를 생성합니다. mysqldump는 백업이 생성되는 동안 데이터베이스를 잠그므로, 데이터베이스의 크기에 따라 1초도 안 걸릴 수 있고 몇 분이 걸릴 수도 있습니다. 대규모 데이터베이스가 있는 고트래픽 웹사이트를 운영 중이라면 AutoMySQLBackup는 귀하에게 적합하지 않습니다!
이 스크립트는 하드 드라이브 충돌 시 도움이 되지 않습니다. 최상의 보호를 위해 정기적으로 오프라인으로 백업을 복사해야 합니다.
2 AutoMySQLBackup 사용하기
다음과 같이 AutoMySQLBackup를 다운로드할 수 있습니다:
cd /usr/local/bin
wget http://mesh.dl.sourceforge.net/sourceforge/automysqlbackup/automysqlbackup.sh.2.5
그런 다음 automysqlbackup.sh.2.5를 열고 구성 옵션을 살펴보세요. 모두 잘 설명되어 있습니다. 최소한 다음 설정을 구성해야 합니다:
vi automysqlbackup.sh.2.5| [...] USERNAME=root [...] PASSWORD=yourrootsqlpassword [...] DBHOST=localhost [...] # 일일/주간 백업을 위한 DBNAMES 목록 예: "DB1 DB2 DB3" DBNAMES="db_ispconfig web1 web2 web3" [...] # 백업 디렉토리 위치 예: /backups BACKUPDIR="/backups" [...] # 이메일 주소로 메일을 보낼까요? ([email protected]) MAILADDR="[email protected]" [...] |
DBNAMES는 하나 이상의 데이터베이스를 포함할 수 있으며, 공백으로 구분됩니다.
BACKUPDIR가 존재하지 않으면 automysqlbackup.sh.2.5가 자동으로 생성합니다.
올바른 비밀번호와 데이터베이스 호스트를 입력했는지 확인하세요. 로컬 데이터베이스를 백업하려면 localhost를 사용하고, 원격 데이터베이스를 백업하려면 원격 호스트 이름을 사용하세요(원격 데이터베이스 서버가 원격 연결을 허용하도록 구성되어 있어야 합니다!).
이제 스크립트를 실행 가능하게 만들어야 합니다:
chmod 755 automysqlbackup.sh.2.5이제 /usr/local/bin 디렉토리에 있다면 다음과 같이 automysqlbackup.sh.2.5를 실행할 수 있습니다:
./automysqlbackup.sh.2.5 … 또는 다른 디렉토리에서 다음과 같이 실행할 수 있습니다:
automysqlbackup.sh.2.5샘플 출력은 다음과 같습니다:
AutoMySQLBackup VER 2.5
http://sourceforge.net/projects/automysqlbackup/
백업 시작 시간 Fri Oct 17 16:00:51 CEST 2008
데이터베이스의 일일 백업 ( db_ispconfig )
지난 주 백업 회전 중…
/backups/daily/db_ispconfig/db_ispconfig_2008-10-17_16h00m.Friday.sql에 대한 백업 정보
압축됨 압축 해제됨 비율 압축 해제 이름
37231 382465 90.3% /backups/daily/db_ispconfig/db_ispconfig_2008-10-17_16h00m.Friday.sql
———————————————————————-
백업 종료 Fri Oct 17 16:00:52 CEST 2008
백업 저장소에 사용된 총 디스크 공간..
크기 - 위치
68K /backups
AutoMySQLBackup가 유용하다고 생각되면
http://sourceforge.net/project/project_donations.php?group_id=101066에서 기부해 주세요
server1:~#
/backups 디렉토리를 살펴보세요…
ls -l /backups… 그리고 세 개의 하위 디렉토리, daily, weekly, monthly를 찾아야 합니다:
server1:~# ls -l /backups/
total 12
drwxr-xr-x 3 root root 4096 2008-10-17 16:00 daily
drwxr-xr-x 2 root root 4096 2008-10-17 16:00 monthly
drwxr-xr-x 3 root root 4096 2008-10-17 16:00 weekly
server1:~#
이 디렉토리에는 백업하기로 선택한 데이터베이스의 이름을 딴 하위 디렉토리가 포함됩니다. 예를 들어, db_ispconfig 데이터베이스를 선택한 경우 /backups/daily/db_ispconfig 디렉토리에 데이터베이스 덤프가 포함됩니다:
cd /backups/daily/db_ispconfig
ls -l
server1:/backups/daily/db_ispconfig# ls -l
total 40
-rw-r–r– 1 root root 37231 2008-10-17 16:00 db_ispconfig_2008-10-17_16h00m.Friday.sql.gz
server1:/backups/daily/db_ispconfig#
.gz 확장자는 압축되었음을 의미합니다. 데이터베이스를 복원하려면 먼저 덤프를 압축 해제해야 합니다:
gunzip db_ispconfig_2008-10-17_16h00m.Friday.sql.gz… (이렇게 하면 db_ispconfig_2008-10-17_16h00m.Friday.sql이라는 압축 해제된 덤프가 생성됩니다) 그리고 https://www.howtoforge.com/faq/6_4_en.html에 설명된 대로 복원합니다.
물론, automysqlbackup.sh.2.5를 항상 수동으로 실행하고 싶지는 않을 것입니다. 따라서 다음과 같이 매일 cron 작업을 생성할 수 있습니다:
cd /etc/cron.daily/
ln -s /usr/local/bin/automysqlbackup.sh.2.5 automysqlbackup
3 링크
- AutoMySQLBackup: http://sourceforge.net/projects/automysqlbackup/
- MySQL: http://www.mysql.com/
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.