今日調(diào)試某網(wǎng)站,因數(shù)據(jù)庫(kù)默認(rèn)字符編碼不是UTF-8的,網(wǎng)站多處出現(xiàn)亂碼的現(xiàn)象。從網(wǎng)上找到很多方法,均不能有效解決問(wèn)題。
一、Windows系統(tǒng)下面
1、中止MySQL服務(wù)
2、在MySQL的安裝目錄下找到my.ini,如果沒(méi)有就把my-medium.ini復(fù)制為一個(gè)my.ini即可
3、打開(kāi)my.ini以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并關(guān)閉(mysqld中增加如果出錯(cuò),可以試 character-set-server=utf8)
4、啟動(dòng)MySQL服務(wù)
以上方法不行。
使用show variables like '%char%';命令返回:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
其中發(fā)現(xiàn)character_set_database 編碼一追仍沒(méi)有改變。
使用 SET character_set_database = utf8 ; 命令仍不能解決問(wèn)題。
于是嘗試使用phpmyadmin 進(jìn)入數(shù)據(jù)庫(kù)中后選擇 操作—— 整理——utf8_uncode_ci ——執(zhí)行。問(wèn)題 解決