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

从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中设置。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。