본문 바로가기
기본적인 개념/기타 컴퓨터

[Mysql] Mysql DB 서버간 이동 시키기!

by 인포메틱스 2020. 12. 18.
반응형

오늘 포스팅을 몰아서 하는것 같네요

 

Mysql을 사용하다 보면 컴퓨터를 바꾸거나, 서버를 바꿀때 DB를 이동해야 할 때가 옵니다.

 

저는 그 때가 오늘이네요. (오늘따라 가 치밀어 오르네요!)

 

Mysql DB를 서버간 이동시키는데, 포스팅 몇개를 보고 따라해도 안되는 경우가 있더라구요.

 

그래서 Ubuntu mysql-server version : 8.0.22-0ubuntu0.20.10.2 (Ubuntu)에서

 

제가 DB를 이동시킬때 했던 방법을 포스팅 하려고 합니다.

 

step1 .이동시킬 DB를 sql로 만들기 (원래 DB가 있던 디바이스에서 진행)

 

먼저 terminal에서 mysqldump를 이용해서 sql파일을 만듭니다.

 

sudo mysqldump -uroot -p DB명 > 어디다 저장할꺼냐/DB저장명.sql

 

그리고 sql파일을 옮길 서버나 컴퓨터로 scp 등을 이용해서 이동시킵니다.

 

SCP사용법

scp -P portnumber 이동시킬_파일 이동시킬디바이스_id@이동시킬디바이스ip:이동시킬디바이스에서 위치

port가 22일 경우 -P 필요없음 (default가 22)
이동시킬디바이스_id가 동일한 경우 쓸 필요없음.

 

step2. 이동시킬 디바이스에서 DB생성 (이동해야할 디바이스에서 진행)

 

sql을 이동시킬 디바이스에 옮긴다음에 바로 DB를 만들지 못합니다.

 

이동시킬 디바이스에 덮어쓴다 라고 생각 하면됩니다. 그렇기 때문에 저장할 DB이름을 mysqladmin으로 만들어줍니다.

 

# terminal에서 진행

mysqladmin -uroot -p create DB_name

 

step3. sql을 이동시킬 디바이스에 DB_name에 덮어씌운다. (이동해야할 디바이스에서 진행)

 

 sql에서 다시 DB로 변경하기 위해서는 다음과 같이 진행해야 합니다.

 

sudo mysql -uroot -p DB_name < 이동시킨 DB.sql

 

위같이 치면 mysql 비밀번호를 치라고 나옵니다. (없으면 그냥 엔터치면 넘어가집니다.)

 

DB가 클수록 오래걸립니다.

 

step4. 확인하기!!

 

이동이 잘되었는지 확인해봅시다.!

 

mysql들어가서 아래 명령어로 확인하면 됩니다~

 

show databases;
use DB_name;
show tables;

끝~

 

저는 위와 같은 방법으로 성공하였습니다.

728x90
반응형

댓글