wordpress 網站轉移伺服器空間,透過 phpmyadmin 匯入 sql 資料時出現錯誤,錯誤提示:
MySQL 返回:
#1273 – Unknown collation:’utf8mb4_unicode_ci’
大致意思是“ 沒有定義的編碼集 utf8mb4” 。搜尋查詢後發現 utf8mb4 是 utf8 的一個衍生形式,utf-8 裡的一個字元只能最多支援 3 個
位元組,而 utf8mb4 則擴充套件到一個字元支援 4 個位元組。而 utf8mb4 只有在 mysql 資料庫版本是 5.5.3+的時候才支援,網站原 mysql 的版本
是 5.6,匯入的 mysql 版本是 5.0,因此出現 #1273 錯誤。

wordpress 官方的相關說明是隻要在資料庫支援 utf8mb4 的時候會把部分資料表的編碼升級為 utf8mb4,如果不支援就不會轉化為 utf8mb4 編碼 (wordpress 4.4 版本支援 mysql 5.0+) 。
解決方法:
方法一:替換編碼
使用程式碼編輯器開啟匯出的 sql 資料檔案;
先查詢:
utf8mb4_unicode_ci
替換為:
utf8_general_ci
再查詢
utf8mb4
替換為
utf8
注意:一定要按照上面的順序進行替換,否則不能替換成功。
PS:部落格吧透過該方法匯入成功,暫時沒有發現有問題,但還是要先備份好資料再進行操作。
方法二:把網站要用的 mysql 資料庫升級到 5.5.3 以上版本。