MySQL에서 데이터베이스를 복사하고자 할때 일반적으로 두가지 경우로 나뉠수있을것 이다. 첫째는 같은 이름으로 복원기능과 같은 복사이고 다른 경우는 다른 이름으로 기존에 있던 데이터를 그대로 유지하고 다른이름으로 데이터베이스를 복사하고자 할때이다.

 

복원과 같은 기능을 쓰고자 할때

mysqldump -u[root] -p[*****] --database [복사할데이터베이스이름] > [적당한데이터베이스이름].sql

ex) sheel> mysqldump -uroot -p***** --database customdb > dump2015_11_.sql

 

복원시키려면 (데이터베이스 원래 이름인 customdb 으로 복원된다)

mysql -u[root] -p[****] < [덤프데이터베이스이름].sql

ex) mysql -uroot -p****  < dump2015_11.sql
ex) mysql -uroot -p****  test < dump2015_11.sql  <- test와 같이 별도로 적어주어도 적용되지 않는다

 

다른이름으로 복사하는 기능을 쓰고자 할때 (--database 옵션을 넣으면 안된다)

mysqldump -u[root] -p[*****] [복사할데이터베이스이름] > [적당한데이터베이스이름].sql

ex) sheel> mysqldump -uroot -p***** customdb > dump2015_11_.sql

 

다른이름으로 복사하려면 

mysqladmin -u[root] -p[****] create [새로운 데이터베이스 이름]
mysql -u[root] -p[****] [새로운 데이터베이스 이름] < [덤프데이터베이스이름].sql

ex)  mysqladmin -u[root] -p[****] create newcustomer
     mysql -uroot -p****  newcustomer < dump2015_11.sql

기존 customdb는 새로 생성한 newcustomer에 복사되어 진다.

 

 

 

 

 

출처 : https://cecildesk.tistory.com/entry/mysql-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EB%B3%B5%EC%82%AC%ED%95%98%EA%B8%B0

+ Recent posts