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