본문 바로가기

Tip

Qnap NAS Mysql (MariaDB) 자동 백업 설정 하기

NAS 를 사용하면서 데이터를 여러번 날려 먹고 나니 백업을 철처히 준비 하게 되었다. RAID 까지는 필요 없으니 필요한 데이터만 선택해서 백업해 두면 데이터를 날리고 가슴을 치며 자괴감에 빠지는 일들은 줄어 들게 된다.

백업이 필요한 데이터 중 하나인 “Qnap Mysql NAS (MariaDB) 자동 백업 설정 하기”에 대해 포스팅 해 보겠다.

  1. 먼저 Db backup을 위한 mysqldump 명령어가 있는지 확인 해 보자.
    Mysql 을 backup 하는 명령어인 mysqldump 명령어의 위치를 찾는 방법은 다음과 같다.
    find / -name mysqldump 

  2. 다음은 스크립트 파일을 다운로드 한다
    .
    mysqlbackup_fixed2.zip

  3. 다운 받은 파일 중 mysqlbackup.conf 파일을 먼저 수정해 둔다.
    Mysqlbackup.conf 파일 설정
    백업을 위해 db에 접근 하기 위한 계정의 정보 설정 및 보관할 백업의 숫자와 백업 파일이 저장될 위치를 설정 할 수 있다.[mysqlbackup]
    day_retention=6
    week_retention=5
    month_retention=3
    day_rotate=1
    Share=
    user=
    pw=
    errorlvl=2
    Folder=수정한 Config 파일은 아래 경로에 업로드 한다.
    /etc/config/mysqlbackup.conf

    파일 업로드 후 config 의 권한을 설정해 둔다.
    chmod 600 /etc/config/mysqlbackup.conf

  4. Mysqlbackup script 인 mysqlbackup.sh 파일의 위치는 원하는 곳에 저장해 두면 된다.

저장 후 아래와 같이 권한 설정을 한다.
chmod 700 mysqlbackup.sh

정해진 시간에 스크립트 실행을 위한 crontab 설정을 한다.
vi /etc/config/crontab
i 를 누르고 아래 스케쥴을 추가 한다.

10 1 * * * /mysqlbackup.sh를 저장한 경로/mysqlbackup.sh

스케쥴 추가후 esc 키를 누르고 wq 를 입력해 저장한다.

변경된 crontab 를 인식하도록 한다.
crontab /etc/config/crontab
crontab에 등록이 되었는지 확인한다.
crontab -l

[HOWTO] Make automatic backup of ALL MySQL / MariaSQL databases on QNAP V3.7 를 참고 했다. https://forum.qnap.com/viewtopic.php?f=32&t=15628


반응형