HeidiSQL 데이터베이스를 SQL 내보내기 사용법

하이디SQL을 통해 MYSQL 데이터베이스 또는 테이블 백업을 할 수 있습니다. CLI 환경 대비 UI로 볼 수 있기 때문에 좀 더 직관적으로 이해하고 진행할 수 있는 게 장점 같습니다.

HeidiSQL 데이터베이스를 SQL 내보내기

test 데이터베이스 내 test_a, test_b 테이블이 존재합니다. 이 샘플 데이터로 해보겠습니다.

 

test sample

 

1. 데이터베이스 전체 SQL로 내보내기

백업하려는 데이터베이스 자체를 우클릭합니다. 이후 데이터베이스를 SQL로 내보내기를 선택합니다.

 

데이터베이스 sql 내보내기

 

이때 데이터베이스, 테이블, 데이터에 대해 선택해야 합니다.

  • 데이터베이스 삭제 : 해당 데이터베이스를 삭제하는 쿼리가 백업 쿼리에 포함됩니다.
  • 데이터베이스 생성 : 삭제를 선택하면 생성은 자동 선택됩니다. 데이터베이스를 생성하는 쿼리가 포함됩니다.
  • 테이블 삭제 / 생성 : 데이터베이스와 내용은 같습니다.
  • 데이터 INSERT : 데이터를 INSERT 하는 쿼리가 백업에 포함됩니다. 아예 백지인 상태에서 실행하기에 적합합니다.
  • 데이터 DELETE + INSERT : 기존 데이터를 모두 DELETE하고 데이터를 INSERT 합니다. 기존 데이터를 초기화하고 백업한 데이터를 INSERT 합니다.
  • 데이터 INSERT IGNORE : 기존에 이미 존재하는 데이터는 무시하고 지나갑니다.
  • 데이터 REPLACE : 기존 데이터를 대체합니다.

기존 데이터베이스와 테이블가 존재하는 경우 모두 삭제하고 백업한 데이터로 완전히 대체하도록 진행해보겠습니다.

 

내보내기 옵션

 

옵션 체크를 완료하면 저장할 파일 경로를 정하고 내보내기를 클릭합니다.

 

내보내기 선택

 

백업한 SQL 파일을 보면 순차적으로 데이터베이스를 지우고 다시 생성한 다음 테이블을 지우고 다시 생성하는 과정이 담겨있습니다.

 

백업 파일

 

1-2. 복원 하기

이제 백업한 데이터를 기준으로 복원해보겠습니다. 먼저 test_a 테이블의 행을 모두 지우겠습니다.

DELETE FROM test_a;

 

데이터 없음

 

이제 백업해두었던 sql 파일을 실행합니다. 파일 메뉴에서 SQL 파일 실행을 선택합니다.

 

sql 파일 실행

 

저장한 sql 파일을 선택하고 인코딩은 UTF-8로 하고 열기를 누릅니다.

 

인코딩 utf8

 

복원이 실행됩니다. 확인해보면 test_a 테이블 데이터가 다시 들어온 걸 볼 수 있습니다.

 

복원 실행

 

데이터 복원

 

2. 테이블별로 SQL 내보내기

테이블만 내보낼 수도 있습니다. 테이블을 우클릭하고 데이터베이스를 SQL로 내보내기를 선택합니다.

 

테이블 내보내기

 

같은 방식으로 원하는 옵션을 선택하고 내보내기를 누릅니다.

 

테이블 내보내기

 

이번엔 test_b 테이블의 일부 행을 업데이트해보겠습니다.

UPDATE test_b SET address='123 Main St_bak' WHERE id=3;

 

테이블 업데이트

 

2-1. 복원 하기

데이터가 변경된 뒤 내보내기했던 sql 파일을 실행합니다.

 

sql 파일 실행

 

데이터가 복원된 걸 볼 수 있습니다.

 

데이터 복원됨

반응형

댓글

Designed by JB FACTORY