본문 바로가기

지적자본/나스 서버

큐냅 워드프레스 대용량 mysql db 데이터베이스 쉽게 백업 및 복원하기

by 디런치 2024. 7. 21.

웹사이트를 운영하면서 가장 예민하고 어려운 부분이 바로 데이터베이스 백업과 복원하는 것이다. 특히 시간이 지날 수로고 데이터베이스의 용량은 커가고, 이를 백업하고 복원하는 과정이 매우 어렵다. 

 

일반적으로 워드프레스 웹사이트를 운영할 때 데이터베이스 DB를 백업하고 복원하는 방법은 다음과 같다.

 

1. phpmyadmin을 이용해서 데이터베이스를 복원하고 백업할 수 있다.

2. updraftplus 와 같은 플러그인을 통해서 백업 및 복원을 할 수 있다.

3. ssh(터미널)을 통해 mysqldump 명령어를 이용해서 백업 및 복원을 할 수 있다.

 

아마도 가장 대표적인 것이 앞선 두가지 방법일 것이다. 하지만, 필자의 경우 데이터베이스 용량이 3기가 바이트가 넘어가면서 문제가 되기 시작했다. 물론 서버의 환경이 저마다 다르겠지만, PHP의 버전에 따라서 보통 db 파일 용량이 2gb 파일이 넘어가면 1번의 경우는 어김없이 mysql 서버가 다운되었고, updraftplus는 3-4gb까지는 그럭저럭 되었지만, 5gb를 넘어가니 잘 되지 않았다. 3번의 경우는 필자가 이러한 터미널 언어에 익숙하지 않아서 몇번 시도했지만, 어려워서 포기했다.

 

그런데 구글링을 하던 중 데이터베이스 프로그램인 MriaDB가 DB를 파일화되어 저장된다는 것을 알았고, 서버를 직접운영하고 있는 사람이라면 MriaDB 폴더로 들어가 데이터베이스를 그냥 파일 통채로 저장하고 복구하면 되지 않을까 하는 생각을 하게 되었고, 실제로 인터넷에서 그렇게 백업과 복구를 하는 사람들이 있었다.

 

그래서 큐냅으로 워드프레스를 운영하고 있는 필자의 조건에서 어떻게 하면 MriaDB 폴더에 접근할 수 있고, 어렵게 php나 네트워크를 통해서 데이터베이스를 백업 및 복구하던 것을 파일을 옮기듯 쉽게 할 수 있는지 공유해보고자 한다.

 

1. 먼저 MriaDB의 Data 폴더 접근하기

 

 

제어판-권한-공유폴더로 가서 '만들기' 버튼을 누른다.

 

 

 

'공유 폴더' 만들기 버튼을 누른다.

 

 

 

폴더이름 : 아무이름이나 mariadb나 mysql 같이 알아보기 쉬운 이름

수동으로 경로입력 클릭

@qmriadb 를 선택해서 해당 경로를 공유폴더로 만들어 준다.

 

 

 

2. 접근 권한 설정

 

 

다시 위쪽 탭으로 가서 고급권한을 클릭

 

 

'고급 폴더 권한 사용'을 선택 후 저장

 

 

 

조금 전에 생성한 공유폴더 목록에서 우측 두번째 '권한설정' 아이콘을 클릭

 

 

 

3. FileStation에서 데이터베이스 경로 접근하기

 

 

파일 스테이션에 생성한 @mariabd 폴더 목록이 보일 것이며, 그것을 클릭하면 그 속에 두개의 폴더가 있다. 그 중에 data 폴더로 들어가면

자신의 데이터베이스 이름과 같은 폴더명이 있을 것이다. 필자의 경우는 'web'이다.

 

 

 

그 폴더로 들어가면 데이터베이스 테이블 이름과 비슷한 파일들이 있을 것이다. 이것이 실제 데이터베이스 파일들이다.

 

 

4. 백업 및 복구하기

 

이것은 따로 설명할 필요가 없을 것이다. 파일화 되어 있기 때문에 그대로 파일을 따로 저장해서 보관해두고, 이것이 필요할 때 사용하고자 하는 데이터베이스 이름과 같은 폴더를 생성해서 파일을 넣어주면 된다.

 

다만, 공유폴더에서 생성한 폴더이름이 실제 데이터베이스 이름과 다르게 표기되는 경우가 간혹있다. 이러한 경우 phpmyadmin에 가서 추가로 사용하고자 하는 데이터베이스 이름으로 수정하며, 데이터베이스는 물론, mariadb/data 폴더속 데이터베이스 폴더 이름도 변경되어 있다.

 

 

 

위와 같이 데이터베이스를 선택하고, 상단탭에서 '테이블 작업'을 선택하면 아래 '테이터베이스 이름을 변경합니다'라는 박스에 원하는 이름을 넣고 '실행'버튼을 누르면 데이터베이스 이름이 변경이 된다.

 

 

구글링을 해본 결과 어떤이들은 폴더를 복원할 때 데이터베이스 프로그램(예 mariaDB)의 일시 중단하고 복원 후 다시 재가동을 해주어야 작동한다고 하던데, 필자의 경우는 그러한 과정이 필요없이 바로 데이터베이스를 옮겨도 아주 잘 작동했다. php를 이용하거나 updraftplus를 이용해서 복원시 용량에 따라 수십분에서 3-4시간이 걸렸던 데이더베이스 복원이 이 방법으로 하면, 단 몇분에 끝이 난다.

 

나만 몰랐나??? 

반응형


댓글