개요

최근에 워드프레스 사이트를 마이그레이션하면서 utf8mb4 문자셋 관련 문제를 겪은 적이 있습니다. 당시에는 sql 파일을 직접 수정하여 문제를 해결했습니다. 이 글에서는 직접 sql 파일을 수정하지 않고도 문제를 해결하는 방법에 대해 간단히 설명하겠습니다.

이때까지 utf8 인코딩을 사용하는 것으로 알고 있는데, 왜 갑자기 utf8mb4 문제가 발생하는 것일까요? 워드프레스 문서에 의하면 WordPress 4.2에서 테이블을 (가능한 경우) utf8mb4로 업그레이드한다고 합니다. 사이트는 다음 조건을 만족하는 경우에만 업그레이드됩니다.

  • utf8 문자셋(char set)을 현재 사용 중이고
  • MySQL 서버 버전이 5.5.3 이상(MariaDB의 모든10.x 버전 포함)이고
  • MySQL 클라이언트 라이브러리 버전이 5.5.3 이상. mysqlnd, 5.0.9 이상을 사용하는 경우.

예를 들어 로컬에서 워드프레스 작업을 한 후에 실제 사이트로 이전하기 위해 DB를 옮길 때 다음과 같은 오류가 발생할 수 있습니다.

#1273 – Unknown collation: ‘utf8mb4_unicode_ci’

이런 오류가 발생하는 이유는 가져오기(Import)하려는 sql이 utf8mb4 인코딩을 사용하는 MySQL server version 5.5.3에서 만들어졌기 때문일 가능성이 높습니다.

실제로 Mac에서 로컬로 작업한 후에 실제 웹호스팅 서버로 이전하려는 경우에 이와 같은 문제가 나타나는 경우를 본 적이 있습니다. 이와 같은 문제가 발생하는 경우 다음과 같은 방법으로 문제를 해결할 수 있습니다.

먼저 DB 작업을 할 때에는 항상 백업을 해두도록 합니다. 이 작업을 수행하기 전에도 반드시 DB 백업을 하시기 바랍니다.

플러그인 사용하기

WP Migrate DB

WP Migrate DB 플러그인을 사용하면 이런 문제를 해결할 수 있다고 합니다. 이 방법이 잘 안 되면 위에 설명된 수동으로 DB를 내보내기하는 방법을 사용하시기 바랍니다.

워드프레스 다운그레이드

WordPress 버전을 4.2 이전 버전으로 다운그레이드한 후에 DB를 내보내는 방법도 생각해볼 수 있습니다. 워드프레스 다운그레이드 방법은 이 글을 참고해보시기 바랍니다.

DB 파일 수정하기

만약 위와 같은 방법이 불가능한 경우가 있을 수 있습니다. 이런 경우 직접 sql 파일을 수정해야 할 것입니다. 이와 같은 작업을 직접 하기가 어려우면 이 블로그의 서비스 문의란을 통해 서비스를 의뢰하실 수 있습니다.

이상으로 ‘utf8mb4’ 문자셋 문제로 워드프레스 이전 시 문제가 발생하는 경우에 대처할 수 있는 방법에 대해 살펴보았습니다. 워드프레스 사이트를 이전하려는 경우 이 글을 참고해보시기 바랍니다.

워드프레스와 관련하여 문의사항이 있나요?

워드프레스 설치/제작/유지보수/문제해결이 필요한 경우 서비스(유료)를 요청하실 수 있습니다.

Service Request