본문 바로가기
지름 신고, 사용기, 팁과 강좌/우분투

mysql, mariadb 백업 및 복원

by Junhyeok 2018. 12. 13.

 mysql은 1995년에 개발된 오픈 소스 DBMS (Database Management System)이다. 이 후 썬 마이크로시스템즈에 인수, 썬 마이크로시스템즈가 다시 오라클에 인수되면서 지금은 오라클이 소유주가 되었다. 그런데 오라클은 오픈 소스 진영과는 관계가 좋지 않아 원래 개발자들이 MariaDB 라는 것을 따로 만들었다. 따로 만들었다고는 하지만 현재까지는 대부분의 기능이 호환되고 심지어 명령어도 똑같다. MariaDB를 설치해도 mysql 이라는 명령어로 실행하고, mysql의 DB를 백업해 MariaDB에서 사용하는 것도 가능할 정도이다. 

 백업 및 복원은 당연히 여러가지 옵션이 있지만 나는 설치해둔 미디어위키를 다른 시스템으로 옮기는데 필요했기 때문에 거기에 따른 최소한의 방법만 기록해둔다. 우분투 카테고리에 있지만 Windows에서도 동일하게 사용 가능.

 백업하기


1. DB별로 백업

mysql에서 show databases; 명령을 사용하면 생성되어있는 DB 목록을 확인할 수 있다.

sudo mysqldump -u root -p DB명 > 백업파일명.sql

mysqldump는  mysql에 접속하지 않은 상태에서 실행하는 명령이다.


복원하기


1. DB 선택하여 복원

mysql -u root -p DB명 < 백업파일명.sql

보통 인터넷을 검색해보면 이렇게만 설명되어있는데 실제로 해보면 복원이 되지 않는다. 존재하지 않는 DB명에는 복원이 되지 않는 듯 하다. 내가 찾은 해결방법은 복원할 DB를 mysql에 접속해서 create database; 명령으로 DB를 새로 만들어두고 DB명을 새로 생성한 DB로 입력하면 복원이 되었다.


댓글