mysqldump 데이터 백업 및 복원

2024. 1. 22. 16:222023/기록_2023

데이터를 이관할때 사용할 데이터 SQL 파일을 요청 받았다.

 

data.sql 파일데이터베이스에 삽입할 초기 데이터를 정의하는 파일이라고 한다.
해당 파일은 INSERT 문을 사용하여 데이터 삽입, DB 초기화, 초기상태 설정에 사용된다.

 

CMD 기준 mysql의 bin 폴더까지 진입하여 아래 명령어 입력

백업파일 생성하는 방법

 

요청 : mysqldump -u [계정] -p -h [HOST] [DB명] [테이블명] > "[백업 파일명].sql"

응답 : Enter password: **************

 

생성된 파일이 잘 들어갔는지 확인을 위해 복원 테스트를 진행하였다.

 

복원파일 생성하는 방법

요청 : mysql -h [HOST] -u [계정] -p [DB명] < " [백업 파일명].sql"

응답 : Enter password: **************

 

테스트한 테이블의 데이터가 약 24,316,903건이어서 INSERT하는데 시간이 꽤 걸렸다.

테이블이 생성되고, 데이터가 들어가는데 까지 시간이 오래 소요되니 참고

 

조건 추가 (like 단일, 복수)

mysqldump -u [계정] -p -h [HOST[ [DB명] [테이블명] -w "[필드명] like '[조건]'" > "[복원 파일명].sql"

 

mysqldump -u [계정] -p -h [HOST[ [DB명] [테이블명] -w "[필드명] like '[조건1]  OR [필드명] like '[조건2] '" > "[복원 파일명].sql"

DROP 제외 --skip-add-drop-table
LOCK-UNLOCK 제외 --skip-lock-tables ( --single-transaction 사용을 추천)
LOCK 걸지 않고 dump파일 정합성 보장 --single-transaction
CREATE 제외 -t,--no-create-info