mysql DB dump

여리·2023년 2월 21일
0

DB dump 란?

데이터베이스 덤프란 데이터베이스의 구조와 내용을 포함하는 파일로 다양한 용도로 사용됩니다. 덤프 파일을 만들어 백업용으로 저장할 수 있고, 복원의 개념으로 이미 만들어진 덤프 파일을 불러올 수도 있다. 또한 다른 데이터베이스 서버로 가져올 수도 있다. 대신 덤프 파일을 사용할 때에는 원본 및 대상 데이터베이스가 동일한 데이터베이스 엔진이어야 한다.

dump를 쉽게 표현하자면 mysql로 접근했을때 mysql의 database에 있는 mysql query를 파일로 만들어서 다른곳에서도 database를 활용할 수 있게 해주는 기능이다.

DB dump 만들기

  1. 우선 DB 서버에 접속하여 덤프 파일을 생성(백업)할 데이터베이스의 이름(dump_test)을 확인한다.
    여기서 생성할 데이터 베이스의 이름은 '내가 이전에 갖고있던 database'이다.
    (내가 갖고있던 database 안에 data가 있는지 사전 확인하는 것이 좋다.)

DB dump command(명령어)

$ mysqldump -u '유저이름' -p 'database 이름' > 'dump이름.sql'

여기서 연산자로 보이는 '>'의 방향을 쓰는것을 주의해야한다.

반대방향으로 하게될때 dump이름.sql이 있을때 dump이름.sql의 data가 비어있고 database이름의 data가 있으면 data가 다 날아가 버릴 수 있다.
그러니 꼭 유의할 것.(내가 그렇게 시험하다가 날려버렸거든 ^^;;)

이러면

짜잔!
이렇게 생긴다.

그리고 이 data를 다시 다른곳에 활용하고 싶다면(ex.AWS에 업로드)

mysql -h 'aws rds endpoint' -u '유저이름' -p 'database 이름'<'dump이름.sql'

또는 다른 local에서 사용하고자 한다면

mysql -u '유저이름' -p 'database 이름'<'dump이름.sql'

으로 명령어를 입력하면 database들을 가져올 수 있다.

dump는 쉽게 생각해야한다.
원래 database에서 data를 복제한 파일을 dump,
dump를 통해 다른 database에 data를 넣을 수 있다. 정도로 생각하면 쉬우려나..?

하나의 백업파일을 dump라고 생각해도 좋을 것 같다.

profile
beckend developer

0개의 댓글