[MySQL] 워크벤치 데이터 dump

2024. 10. 15. 09:39기술 창고/DataBase

728x90
반응형
SMALL

 

개발을 하고 운영하는 도중 결제 관련 데이터를 담아둔 데이터가 통째로 드랍되어 식은 땀이 났던 경험이 있습니다.

개발 일정이 워낙 타이트하고 바쁘다는 핑계로 데이터들을 백업하지도 않았기 때문에 새벽 4시까지 해당 데이터들을 일일히 수기로 다시 생성해줘야 했습니다.... ㅠㅠ

이러한 사태를 다시는 발생시키지 않기 위해 오늘은 MySQL 워크벤치에서 이때까지 쌓아온 데이터들을 백업용으로 dump 시켜 추출하는 방법에 대해서 정리해보겠습니다.

 

 

이 때까지 쌓아온 데이터 테이블들 목록을 우선 확인해줍니다.

이 테이블들을 통째로 dump 시킬 생각입니다.

 

 

워크벤치 Server 메뉴에 Data Export 항목을 눌러줍니다.

 

 

Data Export 구성 화면에서 추출할 데이터베이스 schema를 선택 후, 오른쪽 항목에서 추출할 테이블 스키마 데이터들을 선택해줍니다. 

저는 전부 dump 할 것이기 때문에 전부 선택해주었습니다.

바로 밑에 추출 옵션이 있는데, Dump Structure and Data 옵션은 테이블 구조와 데이터 통째로 추출, Dump Data Only 옵션은 데이터만을 추출, Dump Structure Only 옵션은 테이블 구조만을 추출하는 옵션입니다.

저의 경우, Dump Structure and Data 옵션을 선택해주었습니다.

 

이제 추출하고자 하는 방식에는 2가지 중 하나를 설정할 수 있는데, 첫 번째 Export to Dump Project Folder 의 방식은 dump 된 데이터들이 생성된 폴더 째로 dump 시키는 방식이고, 두 번째 Export to Self-Contained File 방식은 SQL문 파일로 dump 시키는 방식입니다.

(저는 우선 SQL문 파일로 dump하는 방식을 선택했습니다.)

 

이제 Start Export 를 눌러 dump를 진행시켜줍니다.

 

 

 

무사히 dump 되어 SQL문 파일로 추출된 것을 확인할 수 있습니다.

 

 

추출된 dump SQL문 파일을 확인해보면 쿼리문으로 짜여진 내용을 확인할 수 있습니다.

이제 이 import 혹은 복원시키고자 하는 데이터베이스에서 실행시켜주기만 하면 정상적으로 import 및 복원이 완료됩니다.

이 import 시키는 방법에 대해서는 따로 정리하겠습니다.

 

# !! 참고 !!

간혹 import 하고자 하는 데이터베이스가 다른 데이터베이스이고, collation 설정이 dump 시킨 데이터베이스와 다르다면 이 dump SQL 문 파일을 실행했을 때 정상적으로 실행이 되지 않습니다.

이 때는 SQL문 파일 내부에 collation 내용(기본적으로 대부분 utf8mb4 ~~) 을 찾아 삭제해주거나 collation 설정을 맞춰준 다음 실행하면 정상적으로 실행됩니다.

 

728x90
반응형
LIST