워드프레스 마이그레이션 sql 덤프파일 plesk

  • 만든이
    게시글
  • #30532
    IT관리자
    키 마스터

    모 호스팅 업체에서 Ubuntu에 서버를 두고 워드프레스로 홈페이지 잘 돌리다가 작은 실수를 했습니다.

    한 20분이면 충분히 고칠 수 있었으나, 귀찮은 마음에 매일 새벽 4시 마다 자동 백업되는 서버백업파일로 백섭을 했는데요.

    문제는 이때부터 서버에 IP로도 접속이 안 됐습니다. 그래서 어찌어찌 하여 콘솔로 접근하여 에러메시지를 쭉 봤는데..ngix파일에 문제가 있어보였고 서버 시작이 안 되더라고요.

    그런데 이상하게 파일질라로 FTP는 접속이 됐습니다. 그래서 생각한 것이 그냥 서버를 옮기는 것이었습니다.

    그런데 해당 호스팅서버에서 지원해주는 phpmyadmin은 접속이 안되더라고요. 그래서 검색해본 결과 var/etc/mysql을 통째로 받으면 된다하여 그것을 통째로 다운로드했습니다.

    혹시 몰라 http/www/ 안에 있는 .tmb, wp-admin, wp-content, wp-includes, xhprof, htacces와 각종 php파일도 다 받았습니다.

    그리고 해당 서버는 폐쇄하고 새 서버를 열고 plesk를 통해 워드프로세스 홈페이지를 새로 만들었습니다.

    여기까지가 배경이고 문제는 다음부터입니다.
    ---------------------------------------------------
    먼저 도메인도 연결하고 wp-content 폴더에 이전 서버에 있던 것을 다 올렸습니다.

    그런데 DB를 올리는 방법을 모르겠습니다. 보니까 파일이 import를 할 때 sql 파일이어야 한다는데..

    저는 폴더 전체를 저장했다보니 안에 폴더와 파일이 많이 있습니다. 그 중에는 frm, myd, myi, opt, csm, ibd 등이 있습니다.
    -------------------
    제가 시도한 방법..

    1. 파일질라로 ftp 접속해서 통재로 추가 (실패)
    실패한 이유는 파일질라로 접속해도 최상위 폴더로 가도 워드프로세스 파일만 보입니다. var/etc/mysql에 접속할 수 없었습니다.

    2. 집에 다가 sql 서버를 만들고 이전 서버의 db를 넣은 다음에 dump파일 생성 (실패)
    sql서버 만들고 나니 C:\Program Files\MySQL\MySQL Server 8.0\bin 에 db가 있는 것 같더라고요. 그래서 이전 서버의 db를 여기에 다 박아넣고 mysqldump -u 사용자명 -p 디비이름 > c:\백업파일이름.sql 했는데....이전 서버의 db가 아니라 그냥 default db만 복사됩니다.

    인터넷 보니 var/etc/mysql 안에 db를 위한 것이 다 들어있는 것 같은데..어떻게 해야하는지 모르겠네요ㅠ 거의 2년 가까이 운영한 사이트인데..백업했다가 이렇게 되서 너무 속상합니다.ㅠ

    어떻게 하면 될까요?

0 답변 글타래를 보이고 있습니다
  • 글쓴이
    답변
    • #30533
      IT관리자
      키 마스터

      리눅스 서버 전문가를 고용하는 것이 가장 확실한 방법이 될 것 같습니다. 만약 백업 플러그인을 사용하여 디비를 백업한 것이 있다면 쉽게 복구가 가능할 것입니다.

      ​아래는 일반적인 절차입니다. 참고만 하시고, 상황에 맞게 응용해보시기 바랍니다.

      ​Linux에서 /var/lib/mysql (보통 MySQL 데이터가 저장되는 위치입니다. /var/etc/mysql은 일반적인 경로가 아니라고 하네요) 내의 파일들을 사용하여 새로운 Linux 서버에서 데이터베이스를 복구하는 방법은 가능하지만, 몇 가지 주의사항이 있습니다.

      사전 준비

      ​백업 확인: /var/lib/mysql 폴더 내의 모든 파일과 디렉토리가 백업되었는지 확인합니다. 이 폴더에는 데이터베이스 파일, 설정 파일, 사용자 정의 함수 등이 포함될 수 있습니다.

      ​버전 일치: 복구할 서버의 MySQL 또는 MariaDB 버전이 백업을 생성한 서버의 버전과 일치하는지 확인합니다. 버전 불일치는 호환성 문제를 일으킬 수 있습니다.

      복구 절차

      ​MySQL/MariaDB 설치: 새 서버에 동일한 버전의 MySQL 또는 MariaDB를 설치합니다.

      ​서비스 정지: 데이터 복사 전에 MySQL/MariaDB 서비스를 정지합니다.

      sudo systemctl stop mysql

       

      또는

      sudo systemctl stop mariadb

      기존 데이터 디렉토리 삭제 또는 이동: 새 서버의 /var/lib/mysql 내용을 삭제하거나 다른 위치로 이동합니다. 이는 새로운 데이터로 덮어쓰기 전에 기존 데이터를 백업하기 위함입니다.

      ​백업 데이터 복사: 백업한 /var/lib/mysql 폴더의 내용을 새 서버의 동일한 위치로 복사합니다.

      ​소유권 및 권한 설정: 적절한 소유권과 권한을 설정합니다. MySQL 또는 MariaDB가 사용하는 사용자와 그룹에게 소유권을 부여해야 합니다.

      sudo chown -R mysql:mysql /var/lib/mysql
      sudo chmod -R 755 /var/lib/mysql

      MySQL/MariaDB 서비스 시작: 복사가 완료되면, 서비스를 다시 시작합니다.

      sudo systemctl start mysql

       

      또는

      sudo systemctl start mariadb

      데이터베이스 체크 및 복구: 필요한 경우, MySQL 또는 MariaDB의 내부 도구를 사용하여 데이터베이스의 일관성과 무결성을 체크하고 복구할 수 있습니다.

      주의사항

      - 이 절차는 데이터베이스 엔진과 버전이 정확히 일치할 때 가장 잘 작동합니다.

      - 복구 과정에서 데이터 손실이 발생할 수 있으므로, 중요 데이터는 반드시 사전에 백업해야 합니다.

      - 복구 작업을 수행하기 전에 MySQL/MariaDB의 설정 파일(my.cnf 또는 my.ini)을 검토하고, 필요에 따라 새 서버 환경에 맞게 조정해야 할 수 있습니다.

      - 복구 과정에서 문제가 발생하면, MySQL/MariaDB의 로그 파일을 확인하여 문제를 진단할 수 있습니다.

0 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.