方案1: 先进入容器,再运行mysql client
docker run -it -e LANG=C.UTF-8 --rm --entrypoint=bash mysql:8.0.29 mysql --default-character-set=utf8 -h 192.168.0.2 -P 3306 -u'username' -p'password' -D'db_name'
方案2: 一条命令执行
docker run -it -e LANG=C.UTF-8 --rm --entrypoint='' mysql:8.0.29 mysql --default-character-set=utf8 -h 192.168.0.2 -P 3306 -u'username' -p'password' -D'db_name'
方案3:做成shell脚本
#!/bin/bash docker run -it -e LANG=C.UTF-8 --rm --entrypoint='' mysql:8.0.29 mysql --default-character-set=utf8 -h 192.168.0.2 -P 3306 -u'username' -p'password' -D'db_name'
方案4:执行Mysql Server容器(容器名为mysql)里的客户端
docker exec -it -e LANG=C.UTF-8 mysql mysql --default-character-set=utf8 -h localhost -P 3306 -u'username' -p'password'
说明
LANG=C.UTF-8是设置容器的语言,解决命令行无法输入中文的问题
default-character-set=utf8指定mysql的字符集,解决查询结果中文乱码问题
容器中部署与连接MySQL:多种方案对比与解决方案
本文对比了四种连接MySQL的方法:直接在容器中运行客户端、单条命令执行、使用shell脚本和在已有MySQL容器中执行客户端。重点讲解了解决字符集问题和设置环境变量的方法。
616

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



