[워드프레스] utf8mb4 문자셋 문제로 DB 이전에 실패하는 경우

참고: 인기 테마인 BE 테마(33%)The 7(35%) 할인 행사를 진행하고 있습니다.
참고

개요

최근에 워드프레스 사이트를 마이그레이션하면서 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 백업을 하시기 바랍니다.

Custom 옵션을 사용하여 DB 내보내기

첫 번째 방법으로 phpMyAdmin에서 DB을 Export할 때 Custom을 선택하여 이전 버전과 호환이 되도록 설정하는 것입니다.

  1. 웹호스팅 업체(예: Cafe24, 가비아, Bluehost 등) 홈페이지에서 등록한 계정으로 로그인합니다.
  2. phpMyAdmin에 접속하여 해당 DB를 선택합니다.예를 들어, cafe24에서 phpMyAdmin에 접속하는 방법은 이 글에서 “Cafe24에서 phpMyAdmin에 접속하는 방법” 부분을 참고하시기 바랍니다
  3. 상단의 메뉴에서 Export를 선택합니다.
  4. Export Method에서 “Custom – display all possible options“을 선택합니다.
  5. “Format-specific options:” 섹션에서 “Database system or older MySQL server to maximize output compatibility with” 옵션을 ‘NONE’에서 ‘MYSQL40’으로 바꿉니다.
    Export Database system
  6. 하단의 “GO” 버튼을 누릅니다.

플러그인 사용하기

WP Migrate DB

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

워드프레스 다운그레이드

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

DB 파일 수정하기

만약 위와 같은 방법이 불가능한 경우가 있을 수 있습니다. 이런 경우 직접 sql 파일을 수정해야 할 것입니다. 이와 같은 작업을 직접 하기가 어려우면 전문가에게 문의하시기 바랍니다.

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



기부를 통해 이 블로그를 후원하실 수 있습니다.
워드프레스 설치/제작/문제해결이 필요한 경우 서비스(유료)를 요청해주세요.