MySQL命令列介面中出現字元錯誤提示的原因及解決方案_Mysql

來源:互聯網
上載者:User

ERROR 2019 (HY000): Can't initialize character set gb2312
搞了好半天,MySQL都重裝了兩次,號悲劇。。。
之前設定了系統編碼全都是UTF-8了的

vi /etc/sysconfig/i18n 

 

LANG=zh_CN.UTF-8 LANGUAGE=zh_CN.UTF-8:zh_CN.GB2312:zh_CN SUPPORTED=zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en SYSFONT=lat0-sun16 

資料庫也一直配置的 utf8

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DENABLED_LOCAL_INFILE=ON \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/var/mysql/data 

不知道怎麼冒出個 gb2312 來
找了好久最後終於發現應該是終端輸入內容編碼的問題,想起之前為了讓 SSH 正常顯示中文修改了

vi /etc/profile  
LANG=zh_CN.GB2312 export LANG 


這地方給修改過的原因,於是將它注釋掉然後關了 ssh 重新連結後執行命令就正常了,

PS:MySQL匯入亂碼解決
匯入時出現亂碼,需要在語句中添加指定匯入資料的編碼格式:

mysql -uroot -p database_name < database_backup.sql --default-character-set=utf8

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.