docker 的 mysql 容器不能輸入中文解決方法


思路: 檢查系統支持的語言 => 檢查mysql 支持的語言

有三種解決方法
方法1. 宿主機進入的時候 增加一個環境變量 (本次進入docker 容器有效)
sudo docker exec -it mysql env LANG=C.UTF-8 mysql -uroot -p

方法2.修改docer容器內部的環境變量 (先進到mysql容器的bash 再從bash進入mysql有效)
[root@bx ~]$sudo docker exec -it mysql bash
root@6271a2e8e4b2:~#echo "export LANG='C.UTF-8'" >> ~/.bashrc ; bash ;echo $LANG
用此方法 修改后 進入mysql容器的方法是
[root@bx ~]$sudo docker exec -it mysql bash
[root@bx ~]$mysql -uroot -p
以上方法修改完宿主機如果直接輸入 sudo docker exec -it mysql mysql -uroot -p 這樣改的字符集是不生生效

方法3 需要重新構建 docker 容器 (優點 永久生效一勞永逸)

構建docker 容器時候 時候增加一個變量 LANG=C.UTF-8 增加方法:
1 命令行          語法 docker run -d mysql -e LANG="C.UTF-8"
2 docker-compose.yml  語法
                 environment:
                  LANG: C.UTF-8

 

 

借鑒博客

https://www.cnblogs.com/sansheng93/p/11341640.html

https://blog.csdn.net/weixin_35545563/article/details/114010216


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM