Skip to content

[BE] DB 백업

xrabcde edited this page Sep 8, 2021 · 3 revisions

개요

  • DB 서버를 분리하는 과정에서 한 인스턴스에서 다른 인스턴스로 데이터 백업을 진행한 과정을 정리합니다.
  • 이 글에서는 백업 자동화가 아닌 일회성 백업에 대해 다룹니다.

과정

백업 데이터들이 있는 기존 인스턴스에서 해야할 일

스크린샷 2021-08-25 오후 8 49 41
  1. 백업 하려는 파일을 저장할 폴더를 생성합니다.
mkdir backup
  1. 생성한 폴더에 들어가서 DB 백업 명령어를 사용해 백업파일을 만듭니다.
cd backup

// mysqldump -u 사용자계정 -p 기존데이터베이스명 > 백업파일이름.sql
mysqldump -u root -p zzimkkong > backup.sql

로컬 터미널에서 해야할 일

스크린샷 2021-08-25 오후 8 56 40
  1. scp를 사용해 만든 백업파일을 새 인스턴스로 옮깁니다.
  • 현재 보안그룹 관련 설정때문에 원격 > 원격 전송이 불가능해서 원격 > 로컬 > 원격으로 전송했습니다.
// 원격 > 로컬 
scp -i KEY위치 ubuntu@[기존 인스턴스 IP주소]:[전송할 파일 경로] [받을 경로]
scp -i ~/Downloads/KEY-zzimkkong.pem [email protected]:/home/ubuntu/backup/backup.sql ~/Downloads

// 로컬 > 원격
scp -i KEY위치 [전송할 파일 경로] ubuntu@[새 인스턴스 IP주소]:[받을 경로]
scp -i ~/Downloads/KEY-zzimkkong.pem ~/Downloads/backup.sql ubuntu@ 13.124.27.102:/home/ubuntu/backup

데이터를 가져오려는 새 인스턴스에서 해야할 일

스크린샷 2021-08-25 오후 8 59 34
  1. 새 인스턴스에서 DB 복원 명령어를 사용해 백업파일을 데이터로 복원합니다.
cd backup

// mysql -u 사용자계정 -p 새데이터베이스명 < 백업파일이름.sql
mysql -u root -p zzimkkong < backup.sql

끝!

참고

Clone this wiki locally