====== MySQL Database Dump & Copy ======
원문 : http://www.okjsp.pe.kr/bbs?act=VIEW&bbs=bbs4&keyfield=content&keyword=&seq=30723&pg=0
===== 데이터베이스 덤프하기 =====
mysqldump -u 사용자명 -p DB이름 [테이블이름] > 덤프파일명.sql
===== 테이블 구조만 덤프하기 =====
* ''-d'' 옵션만 주면 된다.
mysqldump -d -h 호스트네임 -u 사용자명 -p DB이름 > 덤프파일명.sql
===== binary dump =====
* 바이너리 덤프시 ''%%--hex-blob%%'' 옵션을 준다.
mysqldump --hex-blob -u 사용자명 -p DB이름 [테이블이름] > 덤프파일명.sql
===== 특정 컬럼만 dump =====
* 기본적으로는 안되고, 임시 테이블을 만든다.
mysql> CREATE TABLE `tempTable` AS SELECT `columnYouWant` from `table`;
$> mysqldump yourDB tempTable > temp.sql
* [[https://stackoverflow.com/questions/15264597/how-to-take-mysql-dump-of-selected-columns-of-a-table|mysql5 - How to take mysql dump of selected columns of a table - Stack Overflow]]
===== 데이터베이스 로드하기 =====
로드하기 전에 로드할 데이터베이스에는 덤프 대상에 속한 테이블이 없어야만 한다.
# 데이터베이스 초기화
mysql> drop database DB이름
mysql> create database DB이름
# 데이터 로드
mysql -u 사용자명 -p -e "source 덤프파일명.sql" DB이름
===== MySQL Copy Database =====
MySQL 데이터베이스를 한쪽에서 다른쪽으로 쉽게 복제 가능하다. [[http://dev.mysql.com/doc/refman/5.0/en/copying-databases.html|Copying MySQL Databases to Another Machine]]
mysqldump -u사용자명 -p비밀번호 sourceDB이름 | mysql -h '호스트명' -u사용자명 -p비밀번호 destDB이름
===== 참조 =====
* [[https://stackoverflow.com/questions/935556/mysql-dump-by-query|sql - MySQL dump by query - Stack Overflow]]