首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql 6.5 docker运行“未知标志:--character-set-server”

mysql 6.5 docker运行“未知标志:--character-set-server”
EN

Stack Overflow用户
提问于 2019-01-15 20:59:06
回答 2查看 845关注 0票数 0

我尝试在docker上运行MySQL5.6,如下所示:

代码语言:javascript
复制
docker run --name mysqlxx -e MYSQL_ROOT_PASSWORD=xxx \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci \
-d mysql:5.6

但是得到了以下错误

代码语言:javascript
复制
unknown flag: --character-set-server

有人知道会发生什么吗?是mysql 5.6 Dockerfile的bug吗?

https://hub.docker.com/_/mysql中拉取图像

EN

回答 2

Stack Overflow用户

发布于 2019-01-15 21:15:29

您所编写的代码意味着您将--character-set-server--collation-server作为参数传递给docker,而将而不是作为参数传递给mysql

一旦这些标志与MySQL相关,您就必须将它们传递给MySQL服务,而不是docker。容器命令行紧跟在镜像名称(mysql:5.6)之后。这看起来像是:

代码语言:javascript
复制
docker run --name mysqlxx -e MYSQL_ROOT_PASSWORD=xxx -d mysql:5.6 mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 

如果可以将它们作为环境提供,最好使用这种方法,但是必须在每个环境变量前面加上-e。对不起,我不知道MySQL是否接受来自环境的这样的参数

票数 2
EN

Stack Overflow用户

发布于 2019-01-18 20:40:35

正如@grapes所说,参数应该放在图像名称之后。下面的命令有效。

代码语言:javascript
复制
docker run --name mysqlxx -p 3336:3306 \
-e MYSQL_ROOT_PASSWORD=xxx -d mysql:5.6 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54199358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档