Docker MySQL容器内无法输入中文问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jt102605/article/details/86757634

从dockerhub拉取MySQL镜像,启动并进入进入容器,发现在MySQL命令行内无法输入中文 ,退出到容器终端同样无法输入中文.

在容器终端查看语言环境

# locale
LANG=
LANGUAGE=
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=

容器系统内默认使用的是POSIX字符集,而POSIX字符集是不支持中文的.

进一步查看容器系统额外支持的字符集

# locale -a
C
C.UTF-8
POSIX

C.UTF-8支持中文,把系统中的语言环境 LANG 改为"C.UTF-8"格式即可解决问题

docker exec -it container_name env LANG=C.UTF-8 /bin/sh

这样, 只是临时修改, 要永久修改需要在创建容器时在dockerfile中设置。

猜你喜欢

转载自blog.csdn.net/jt102605/article/details/86757634