方案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的字符集,解决查询结果中文乱码问题