LJC.LOG
April 19, 2024

Mariadb DB 백업하기

백업을 하는 이유 )

데이터베이스는 중요한 정보를 저장하고 있습니다.

만약 DB 서버에 문제가 생기거나 데이터가 손실된다면 복구가 어려울 수 있습니다.

따라서 정기적으로 DB 백업을 수행하는 것이 중요합니다.

이 블로그의 필자는 자신의 글을 개인 서버의 DB에 저장하고 있는데, DB 문제가 발생하여 내용이 사라지면 다시 작성하기 어렵기 때문에 월말을 기준으로 DB 백업을 진행할 예정입니다.

백업방법 )

백업 방법으로는 mysqldump 방식을 사용합니다. 데이터가 많을 경우 속도가 느리지만 사용이 간편합니다.

데이터베이스 백업 명령어

>> mysqldump -u root -p 데이터베이스명 > 백업파일명.sql

터미널명령어1

위 명령어로 백업 파일을 생성할 수 있습니다.

복구방법 )

복구 방법도 간단합니다.

데이터베이스 복구 명령어

>> mysql -u root -p 데이터베이스명 > 백업파일명.sql

위 명령어로 손쉽게 백업된 데이터를 복구할 수 있습니다.

이제 스크립트로 월말일에 자동으로 실행되도록 처리해 보겠습니다.

자동 백업 스크립트 및 스케줄러 설정)

백업 작업을 자동으로 수행하기 위해 스크립트를 작성하고, 작업 스케줄러를 설정합니다.

스크립트 작성

vi 편집기로 sh파일생성

>> vi backup_script.sh

vi 편집기에서 아래와 같이 내용을 입력 합니다.

백업 디렉토리 생성

백업 파일을 저장할 디렉토리를 생성합니다.

>> mkdir -p /root/DB_backup

크론탭 설정

크론탭을 설정하여 스크립트를 일정 시간마다 실행하도록 합니다.

>> crontab -e

처음실행 시 아래와 같이 편집기를 고르라는 옵션이 나오는데 편하신것으로 입력해주세요 (nano편집기가 젤 쉽습니다. 전 1번)

터미널명령어2

편집기에서 아래와 같이 작업 스케줄을 등록합니다. 예를 들어, 매일 10시 20분에 실행되도록 설정할 수 있습니다.

nano편집기

위 기준으로 41 10 * * * 분 시간 일자 월 년도 순으로 입력하시면 됩니다. (테스트를 위해 10시 41분에 실행되도록 하였습니다.)

스크립트에 실행 권한을 부여합니다.

>> chmod +x /root/backup_script.sh

시간이 되면 아래와 같이 백업 파일이 생성되는 것을 확인할 수 있습니다.

디렉토리

위와 같이 데이터베이스 백업 및 복구 방법을 설정하고, 자동화 스크립트를 통해 정기적으로 백업을 수행할 수 있습니다.

혹시 작업하시다가 이해안되시는 부분이 있다면 댓글 남겨주세요.

읽어주셔서 감사합니다. 😊

Related Posts