2013/9/24 18:06:44
(0)
mysql會出現中文亂碼的原因不外乎下列幾點:
1.server本身設定問題,例如還停留在latin1
2.table的語系設定問題(包含character與collation)
3.客戶端程式(例如php)的連線語系設定問題
強烈建議使用utf8!!!!
utf8可以相容世界上所有字元!!!!
linux下mysql插入中文顯示亂碼解決方案
mysql -uroot -p 回車輸入密碼
進入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中文亂碼
檢視資料庫編碼 show variables like char 修改字元編碼 set character set server utf8 set character set database utf8 show variables like char global範圍 mysql設定變數的範圍預設...
PHP徹底解決mysql中文亂碼
mysql是我們專案中非經常常使用的資料型資料庫。可是由於我們須要在資料庫儲存中文字元,所以經常遇到資料庫亂碼情況。以下就來介紹一下怎樣徹底解決資料庫中文亂碼情況。資料庫執行 show variables like char 看到字符集都是latin1 建立資料庫 create database t...
徹底解決mysql中文亂碼的辦法
mysql會出現中文亂碼的原因不外乎下列幾點 1.server本身設定問題,例如還停留在latin1 2.table的語系設定問題 包含character與collation 3.客戶端程式 例如php 的連線語系設定問題 強烈建議使用utf8 utf8可以相容世界上所有字元 linux下mysql...