Search

MySQL 백업 및 복구

MySQL 백업 및 복구시 주로 많이 사용하는 위주로 정리

DB 전체 백업 및 복구하기

백업

mysqldump --opt --flush-logs --all-databases -uroot -p > mysql_all.sql
Bash
복사

복구

mysql -uroot -p < mysql_all.sql
Bash
복사

DB 스키마별 백업 및 복구하기

백업

mysqldump -u[DB사용자] -p[패스워드] [-h hostname] [백업할 데이터베이스 이름] > [파일이름]
Plain Text
복사

복구

mysql -u[DB사용자] -p[패스워드] [-h hostname] [복구할 데이터베이스 이름] < [파일이름]
Plain Text
복사

DB 테이블별 백업 및 복구하기

백업

$ mysqldump -u[DB사용자] -p[패스워드] [-h hostname] [데이터베이스 이름] [백업할 테이블명] > [파일이름]
Plain Text
복사

복구

DB 테이블별 복구 : 중복된 테이블이 없는지 확인여부가 필요
mysql -u[DB사용자] -p[패스워드] [-h hostname] [테이블을 복구할 데이터베이스 이름] < [파일이름]
Bash
복사

옵션

데이타없이 스키마 정보만 덤프

-d, --no-data
Bash
복사

데이타만 덤프 (테이블 스키마 정보는 제외)

-t, --no-create-info
Bash
복사

버퍼를 사용하지 않고 바로 표준출력으로 보냄

-q, --quick
Plain Text
복사

덤프 중 에러가 있어도 계속 진행

-f, --force
Plain Text
복사

INSERT 구문에서 필드명을 포함한 전체를 덤프

-c, --complte-insert
Plain Text
복사
p.s : 비밀번호에 특수문자 포함되어 명령 실행되지 않을때 비밀번호를 '..'로 감싸주면 됨 mysql -uuserid -p'!@$@$%%' dbname < dbname.sql
ⓒ VeriCras 2024
vericras@gmail.com