Oracle MySQL Community Server 8.0镜像启动即崩溃问题求助
解决MySQL Docker镜像启动失败:配置文件缺少组选项的问题
错误原因
日志里的核心错误是Found option without preceding group in config file /etc/my.cnf at line 1——MySQL的配置文件要求所有配置参数必须归属到对应的配置组中(比如[mysqld]、[client]等),你的自定义my.cnf直接写入了innodb_fast_shutdown = 0,没有指定所属的配置组,导致mysqld初始化时无法识别该参数,触发启动失败。
修复方法
修改你的自定义my.cnf,将配置项放到对应的配置组下。由于innodb_fast_shutdown是mysqld的专属参数,需要放到[mysqld]组内:
[mysqld] innodb_fast_shutdown = 0
验证启动
修改完成后,直接用正常命令启动容器即可,无需额外指定--entrypoint参数:
docker run --name=mysql80-3 \ --mount type=bind,src=/Users/bmr/Desktop/Work/marketplace.akc.org/my.cnf,dst=/etc/my.cnf \ --mount type=bind,src=/Users/bmr/Desktop/Work/temp,dst=/var/lib/mysql \ -d container-registry.oracle.com/mysql/community-server:8.0
补充说明
之前用--entrypoint /bin/bash能保持容器运行,是因为此时容器启动的是bash shell而非mysqld进程,不会加载并检查my.cnf的配置格式,所以不会触发错误,但这并不是正常启动MySQL服务的方式。
内容的提问来源于stack exchange,提问作者steve8094
相关产品推荐
相关产品推荐

