问题描述:
MySQL是通过Docker安装的,服务器没有开3306端口,因此需要进入到容器内部用命令给表添加一个字段,结果发现书写命令的时候不能输入中文。
解决办法:
1.进入MySQL的Docker容器。
[root@dl2xkjbzy0eot7 conf.d]# docker exec -it mysql bash
2.查看当前字符集,发现是POSIX字符集,这个字符集不支持中文,需要修改为支持中文的字符集。
bash-4.2# locale
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
3.查看系统可用的字符集,发现其中有C.UTF-8这个字符集是可以支持中文的。
bash-4.2# locale -a
C
C.utf8
POSIX
en_AG
en_AG.utf8
en_AU
en_AU.iso88591
en_AU.utf8
en_BW
en_BW.iso88591
en_BW.utf8
en_CA
en_CA.iso88591
en_CA.utf8
en_DK
en_DK.iso88591
en_DK.utf8
en_GB
en_GB.iso88591
en_GB.iso885915
en_GB.utf8
en_HK
en_HK.iso88591
en_HK.utf8
en_IE
en_IE.iso88591
en_IE.iso885915@euro
en_IE.utf8
en_IE@euro
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ
en_NZ.iso88591
en_NZ.utf8
en_PH
en_PH.iso88591
en_PH.utf8
en_SG
en_SG.iso88591
en_SG.utf8
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8
en_ZA
en_ZA.iso88591
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW
en_ZW.iso88591
en_ZW.utf8
4.修改系统字符集。
bash-4.2# echo "export LANG=C.UTF-8" >>/etc/profile && source /etc/profile
5.进入MySQL后可输入中文。

文章讲述了在Docker中通过MySQL容器遇到中文输入问题,解决步骤包括进入容器、查看和修改字符集为支持中文的C.UTF-8,确保后续能正确输入中文字符。
1631

被折叠的 条评论
为什么被折叠?



