WordPress mysql db 由 latin1 轉成 utf8

2009/02/17
~ 阿亮 ~

原本我這個 wordpress 的 mysql 資料庫 (比如名稱為 myblog),DB_COLLATE 為  latin1_swedish_ci ,也不是不能用,只是用 phpmyadmin 會變亂碼,在後台處理會麻煩點。

為了後端資料庫方便直接修改資料內容,就花點時間將該資料庫轉成 utf8 的資料。

參考各方資料,最後實作的步驟如下:

  • 新增一個新的 db,比如為 myblog_utf8,用 phpmyadmin 將其 DB_COLLATE 設成 utf8_general_ciutf8_unicode_ci
  • 將 myblog 的資料匯出
mysqldump myblog --default-character-set=latin1 > test.sql
  • 用 vi 編輯 test.sql,執行取代字串
:% s/CHARSET=latin1/CHARSET=utf8/g
  • 然後,將 test.sql 的下列這行
/*!40101 SET NAMES latin1 */;
  • 取代成
/*!40101 SET NAMES utf8 */;
  • 然後,將 test.sql 匯入 myblog_utf8
mysql myblog_utf8 --default-character-set=utf8 < test.sql
  • 編輯 wp-config.php  的 DB_NAME, DB_CHARSET 及 DB_COLLATE,讓原來的 db 重新指到 myblog_utf8 即完成。
define('DB_NAME', 'myblog_utf8');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', 'utf8_general_ci');

PS: 並不需要用 iconv 等編碼轉換的過程!



站內搜尋



本站其他服務

本站其他軟體



  • 姓名筆畫吉凶查詢系統

    這是一個提供中文字康熙筆畫的小軟體,並根據農民曆計算每個名字或公司名的總筆畫以及最後的吉凶數,共有四種模式


  • 下一班高鐵 (nextTHSR)

    這個 app 只要開啟後,就根據定位幫你過濾出最近高鐵站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班高鐵


  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 台灣匯率快算

    提供全球 150 種以上貨幣即時換算,以及各種匯率歷史變化圖。


  • 批踢踢快訊 (pttNews)

    身為鄉民的您,是不是常常覺得現在的批踢踢 (PTT) 閱讀器,明明您就只要看幾個板,都幫您分類好,但不是您要的?甚至您只想關注某個人(或某件事)的消息,卻散布在不同東西,找出來很辛苦? 這個 App 可以解決您這些問題,快來用吧!


  • 下一班火車 (nextRail)

    這個 app 只要開啟後,就根據定位幫你過濾出最近火車站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班火車