在工作學習中遇到出現中文亂碼是一件非常讓人頭疼的一件事,我也深受其害,在這裡我整理了一下在使用mysql時候出現亂碼的解決步驟,大家共同學習,共同進步。
首先來確定一下各個環節的字符集是否一致,字符集不一致導致的亂碼問題最為常見。
1. 確認當前xshell連線linux的繪畫所使用的字符集型別
2. 確認當前linux系統的字符集
# locale:檢視當前系統的字符集
# locale -a:檢視系統全部可用的字符集
# locale -a | grep zh_cn:檢視中文型別的字符集
# echo $lang
臨時修改linux字符集
# export lang=zh_cn.utf8
永久修改linux字符集
(1) echo "export lang=zh_cn.utf8" > ~/.bashrc
(2) centos7修改檔案 /etc/locale.conf
centos6修改檔案 /etc/sysconfig/i18n
3. 確認和mysql相關的字符集
mysql> status 《檢視各種字符集資訊
server characterset: utf8
db characterset: utf8
client characterset: utf8
conn. characterset: utf8
#檢視建立表tb2的時候所使用的字符集
mysql> show create table tb2\g
#檢視建立庫db2的時候所使用的字符集
mysql> show create database db2\g
#修改mysql server字符集型別
在my.cnf中的mysqld段新增 character-set-server = utf8
修改乙個表的字符集
alter table tb1 convert to character set ;
修改資料庫的字符集我一般是先將這個資料庫中的內容備份出來,然後新建乙個資料庫,顯得資料庫使用期望使用的字符集型別,最後將備份資料匯入到這個新的資料庫中。
1. 備份原有資料
# mysqldump --default-character-set=gbk -uroot -p123 -b db4 --tables tb4>/home/old.sql
【可以用vim檢視其中是否有亂碼】
2. 修改備份檔案中的資料字符集型別
# iconv -t utf-8 -f gbk -c /home/old.sql >/home/new.sql
【可以用vim檢視其中是否有亂碼】
3. 用新的字符集仙劍乙個資料庫,並將備份檔案匯入進去
mysql> create database db5 character set utf8;
# mysql -uroot -p123 db5------做運維之前很矯情的小年輕-----
MySql 亂碼問題解決
最近連線mysql資料庫的時候,我也遇到了中文亂碼問題 呵呵,很頭疼哦!我用的資料庫是mysql5.0,所以,我先用google,baidu等上網搜了一下解決方案,自己也按著方法反覆測試了一下午,終於解決了我的jsp mysql5.0 tomcat 5.0.29出現的亂碼問題。解決方案如下 1 在d...
MySql遇到亂碼問題解決。
情況 使用myeclipse db browser 執行乙個sql檔案,結果頁面亂碼。解決方法,設定1 db browser的connection url設定為 jdbc mysql 2 mysql根目錄下的my.ini檔案 default character set設定為default chara...
MySQL中文亂碼問題解決
mysql 4.1及以後的版本開始支援多語言,這個所謂的多語言,就是在輸入輸出時mysql會替你做編碼轉換。而這個轉換規則就是由客戶端編碼和伺服器端編碼來決定的。編碼轉換的規則就是 在輸入資料時將編碼由 客戶端編碼 轉換為 伺服器端編碼 輸出時將資料由 伺服器端編碼 轉換為 客戶端編碼 mysql ...