기존의 데이터를 다른 데이터로 옮길 때 사용한다. 다음과 같은 경우가 있다.

  • 운영 서버의 데이터를 개발 서버의 데이터로 옮길 때
  • 온-프레미스로 운영하는 데이터를 AWS RDS 등과 같은 클라우드로 옮길 때
  • 데이터 백업
  • MySQL 재설치

백업(dump), export

$ mysqldump -u [사용자계정] -p [패스워드] [export할 DB명] [table명] > backup.sql

# example
$ mysqldump -u root -p -h 192.168.0.10 before_db > backup.sql
password : 1234

→ DB의 한 테이블만 선택하여 백업도 가능 (table명까지 명시하면 됨)
→ -h 옵션을 사용하여 호스트 설정가능
→ -P 옵션을 사용하여 포트 설정가능

복원, import

$ mysql -u [사용자계정] -p [패스워드] [import할 DB명] < backup.sql

# example
$ mysql -u root -p after_db < backup.sql
password : 1234
* DB의 모든 테이블을 백업할 경우
$ mysqldump -u [사용자계정] -p [패스워드] --all-databases --default-character-set=utf8 > backup.sql

$ mysql -u root -p < backup.sql

# example
$ mysqldump -u root -p --all-databases --default-character-set=utf8 > backup.sql
password : 1234
$ mysql -u root -p < backup.sql