[MySQL] mysqldump

이태권 (Taekwon Lee)·2022년 6월 30일
0

[MySQL]

목록 보기
4/4
post-thumbnail

"Work" (이남규, 1977)


mysqldump

  • 예시 데이터를 많이 생성하여서, 다른 백엔드 팀원이 별다른 고생 없이 동일한 데이터를 보내고 싶었다.
  • mysqldump를 통해 내가 만든 Database(이하 DB)를 파일의 형태로 만들어 다른 분들한테도 전송할 수 있다.
  • 뿐만 아니라 전송한 파일을 그 사람의 원하는 DB에 담을 수 있다.

이는 일종의 압축 파일을 생성하여, 원하는 사람한테 보내고 그 사람이 그 압축 파일을 압축 해제하여 원본 형태의 파일을 갖는 느낌이다.

🖥 1. mysql 접속 및 원하는 DB 조회

우선 mysql 접속

mysql -u root -p

비밀번호 입력

Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is ~~~
Server version: ~~~

원하는 DB를 조회한다. 필자는 예시로 현재 진행 중인 watcha_classic을 선택하였다.

mysql> SHOW databases;
+-------------------------+
| Database                |
+-------------------------+
| watcha_classic          |
+-------------------------+
12 rows in set (0.00 sec)

🖥 2. mysqldump로 sql 파일 생성

리다이렉션을 통해 원하는 파일을 생성한다
형식은 아래와 같다

mysqldump -u root -p (옮겨야 할 DB) > (생성할 sql 파일 이름)

예시로 a.sql을 만들었다.

mysqldump -u root -p watcha_classic > a.sql

비밀번호 입력

Enter password:

파일을 조회해 보자

위와 같이 a.sql이 성공적으로 성공되었다.

이제 원하는 사람에게 해당 sql 파일을 전송하면 된다


🖥 3. mysql로 데이터베이스에 sql파일 담기

이제 입장이 바뀌었다.
sql 파일을 받은 사람이 아래 과정을 진행하면 된다.

우선 mysql 접속

mysql -u root -p

비밀번호 입력

Enter password:

mysql> CREATE DATABASE (생성할 database 이름);를 사용하여
옮겨 담을 데이터베이스를 새로 생성 하자.

필자는 예시로 example_database로 했다.

mysql> CREATE DATABASE example_database;

이제는 리다이렉션의 방향을 바꾸면 된다.
mysqldump -u root -p (옮겨 담아야 할 DB) > (생성할 sql 파일 이름)

a.sql 파일의 내용을, 담아야 할 DB에 넣으면 된다.

mysql -u root -p example_database < a.sql

비밀번호 입력

Enter password:

mysql에 접속하여 이제 확인해 보자.

mysql -u root -p
mysql> use example_database
mysql> show tables;

성공적으로 생성 완료!


🔖 참고 자료

profile
(Backend Dev.) One step at a time

0개의 댓글