mysql 백업할 때, 가장 많이 사용하는 데이터베이스 하나를 통째로 백업하기입니다. 특정 테이블만 백업하려거나 특별한 옵션이 필요하다면, 구글신과 서적을 참고하기 바랍니다.
[mydb1]
+-- members
+-- board
+-- files
[mydb2]
+-- music
+-- photo
와 같은 구조로 이루어진 데이터베이스가 있다고 칩시다.
mydb1 라는 데이터베이스 전체를 백업하고 싶을 때, 아래와 같은 명령을 사용합니다.
% mysqldump --single-transaction --databases mydb1 -h localhost -u root -p > mydb_dump.sql
사용한 mysqldump 옵션과 파라미터 요약
- --single-transaction : innoDB의 경우 락을 걸지 않고도 데이터를 안전하게 덤프
- --database mydb1 : 덤프하려는 데이터베이스명
- -h localhost : localhost에 접속. 서버와 DBMS가 같이 동작하는 경우
- -u root : mysql에 접속할 ID가 root 가 아니고 사용자ID라면 자신의 ID로 입력
- -p : 패스워드를 따로 입력 받음. 콘솔 명령행에 암호를 추가하면 안됨
- > mydb_dumb.sql : 덤프된 결과가 보내질 파일명. 확장자는 .sql 을 권장