mysql會出現中文亂碼的原因不外乎下列幾點:
1.server本身設定問題,例如還停留在latin1
2.table的語系設定問題(包含character與collation)
3.客戶端程式(例如php)的連線語系設定問題
強烈建議使用utf8!!!!
utf8可以相容世界上所有字元!!!!
linux下mysql插入中文顯示亂碼解決方案
進入mysql檢視狀態如下:
mysql不能插入中文
預設的是客戶端和伺服器都用了latin1,所以會亂碼。
解決方案:
mysql>user mydb;
mysql>alter database mydb character set utf8;!
另一種方法是直接修改預設的mysql配置檔案
在debian環境下,徹底解決mysql無法插入中文和中文亂碼的辦法
上面提到了用臨時方法更改資料庫的字符集設定,顯示中文,但是後來發現在有的系統下並不能成功,比如我用的debian 7.0,找了好久終於找到乙個適合debian系統的解決方案,debian 7.0下測試成功,其他諸如修改client和mysql加入default-character-set=utf8的方法之類的,只適用與5.5以前的系統!
終極決絕方案,一勞永逸:
debian下mysql的字串修改為utf8(參考:rainysia的專欄)
一、進入mysql(mysql -uroot -p),檢視當前資料庫字符集(status;)
二、檢視當前系統版本(lsb_release -a)
mysql不能插入中文
三、#vim /etc/mysql/my.cnf 。(5.5以前系統
)在【client】下面加入 default-character-set=utf8
在【mysqld】下面加入default-character-set=utf8
notice:注意 如果修改後不能啟動報錯試試把default-character-set=utf8改為character_set_server=utf8,僅僅加入到mysqld下面的.client就不需要加了
四、#vim /etc/mysql/my.cnf 。(5.5以後系統)如下修改:
[client]
default-character-set=utf8
[mysqld]
default-storage-engine=innodb
character-set-server=utf8
collation-server=utf8_general_ci
五、重啟mysql(/etc/init.d/mysql stop /etc/init.d/mysql start)
六、修成成功,進入mysql檢視字符集(mysql>show variables like 『character_set_%』;)
mysql無法插入中文
mysql中文亂碼子集 MySQL中文亂碼問題
中文亂碼問題在我們的mysql課程中常常出現,很多人在求助網路幫助的時候,往往達不到解決中文亂碼的目的,我這裡就我遇到過的一些問題進行彙總,並在以後不斷的新增新的問題!1 初窺門徑 眾所周知,出現中文亂碼問題一定是由字符集編碼問題引發的,但是很多時候我們都是對mysql配置檔案my.ini中的如下 ...
mysql中文亂碼 簡書 MySQL中文亂碼
檢視編碼 show variables like character 修改編碼 mysql set character set client utf8 mysql set character set connection utf8 mysql set character set database u...
mysql中文亂碼
以前存db裡的東西都是英文本母,今天存了個中文,居然是個 鬱悶 ing。在命令列中 執行show variables like character 然後用set names utf8 set character set server utf8 然後在執行show variables like cha...