데이터베이스(DB) 크기가 500MB에 달하는 워드프레스 사이트를 이전하는 작업을 맡았습니다. DB가 너무 크면 Duplicator나 All-in-One WP Migration 같은 플러그인을 사용할 경우 에러가 발생하게 됩니다. 그러면 수동으로 사이트를 이전해야 합니다.
하지만 DB가 너무 크면 phpMyAdmin을 통해 DB를 임포트(Import)할 수 없습니다. 가령 카페24의 경우 phpMyAdmin을 통해 21MB까지 임포트가 가능하고 블루호스트(Bluehost)의 경우 상품에 따라 다르지만 50MB~100MB 정도까지 임포트가 가능합니다.
Bluehost VPS에서는 phpMyAdmin을 통해 105MB까지 임포트가 가능하다.
하지만 경험상 50MB 이상의 파일을 phpMyAdmin에서 임포트를 시도할 경우 오류가 발생할 가능성이 높은 것 같습니다.
저는 500MB 크기의 DB를 SSH를 통해 임포트를 시도했습니다. SSH에서는 다음과 같은 명령을 사용하여 Import가 가능합니다.
mysql -p -u user_name database_name < file.sql
엑스포트(Export; 내보내기)는 다음과 같은 명령을 통해 가능합니다.
mysqldump -p -u username database_name > dbname.sql
하지만 DB 임포트를 시도하니 "Unknown character set: 'utf8mb4'" 오류가 발생하여 임포트에 실패했습니다.
이 문제는 MySQL 버전이 너무 낮아서 발생하는 것 같습니다. PHP 버전을 5.5에서 7.3으로 업그레이드하고 MySQL을 MariaDB 버전 10.3으로 바꾸니 문제가 해결되었습니다.
다른 방법으로 DB를 내보내기할 때 "호환성을 최대화 할 수 있는 데이터베이스 시스템 또는 예전 버전의 MySQL 서버"의 옵션을 MYSQL40으로 설정하면 문제가 해결될 것입니다. (고객으로부터 DB를 받았다면, MYSQL40 옵션을 사용하여 DB를 다시 임포트하여 보내줄 것을 요청할 수 있을 것입니다.)
참고로 현재 워드프레스 권장 요구사항은 다음과 같습니다.
- PHP 버전 7.3 이상
- MySQL 버전 5.6 이상 - 또는 - MariaDB 버전 10.1 이상
- HTTPS 지원
특히 최신 워드프레스 버전은 PHP 5.5에서 제대로 작동하지 않습니다. 그리고 PHP 5.x의 수명만료일이 도래하여 더 이상 보안 업데이트가 제공되지 않으므로, 가급적이면 최신 PHP 버전을 이용하는 것이 보안상, 그리고 성능상 유리합니다.
수동으로 워드프레스를 이전하는 방법은 다음 영상을 참고해보세요.