이것저것 적어보는 블로그

MySQL DB 백업하기 본문

개발&코딩

MySQL DB 백업하기

dona0408 2024. 7. 23. 19:17
반응형

기존에 사용하던 AWS의 Free Tier가 만료되면서 월 $20에 달하는 금액이 나오고 있었다…

무료로 사용 가능한 클라우드를 찾다가 구글의 GCP와 오라클 클라우드가 평생 무료라길래 어디로 옮길까 고민하던 중 GCP로 이동해보기로 결정

이전을 하려면 DB 및 프로젝트를 백업 후 옮겨야한다. git을 이용하여 옮겨도 되지만 ssh로 접속해 백업 파일을 만들고, 해당 파일들을 새 서버에 넣을 계획이다.

 

DB의 백업은 간단하다

mysqldump -u [사용자 계정] -p [패스워드] [원본 데이터베이스명] > [생성할 백업 DB명].sql

 

반대로 복원의 경우는 >의 방향만 반대로 돌린 <로 해주면 된다

mysql -u [사용자 계정] -p [패스워드] [복원할 DB] < [백업된 DB].sql

 

테이블만 백업을 할거라면 다음의 명령어를 이용하면 된다

mysqldump -u [사용자 계정] -p [패스워드] [데이터베이스명] [원본 백업받을 테이블명] > [백업받을 테이블명].sql

 

테이블 복원은 다음과 같다

mysql -u [사용자 계정] -p [패스워드] [복원할 DB ] < [백업된 테이블].sql

 

MySQL의 모든 데이터베이스를 백업하는 방법도 존재하는데, 웬만해서는 쓸 일이 없을거 같지만 서비스 백업용으로 쓸 지도 모른다는 생각이 들긴하다

mysqldump --all-databases -u [사용자 계정] -p --default-character-set=euckr < [백업된 DB].sql

 

복원 명령어는 되게 간결하다

mysql -uroot -p < all.sql
반응형
Comments