[ERROR] [Entrypoint]:mysqld failed while attempting to check config
·
爆错代码
docker run -p 3307:3306 --name mysql-master \
> -v /mydata/mysql-master/log:/var/log/mysql \
> -v /mydata/mysql-master/data:/var/lib/mysql \
> -v /mydata/mysql-master/conf:/etc/mysql \
> -e MYSQL_ROOT_PASSWORD=root \
> -d mysql:5.7
问题描述
执行代码后 再用docker ps查找不到运行的容器id,但是执行docker ps -a可以看到容器以非零方式退出了

使用docker logs 查看日志
docker logs mysql-master
2025-07-23 05:01:20+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.
2025-07-23 05:01:20+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.nVAeWu6pEy
mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
原因
我使用的是mysql 5.7,按着的是之前的学习资料,配置挂载目录时,关于配置文件是的路径描述这样的
-v /mydata/mysql-master/conf:/etc/mysql \
这个在之前是可以的,现在应该在报错的/etc/mysql/conf.d/下才对
解决方案
先删除之前的容器
docker rm -f 容器id/容器名
docker rm -f mysql-master
再重行执行
docker run -p 3307:3306 --name mysql-master \
> -v /mydata/mysql-master/log:/var/log/mysql \
> -v /mydata/mysql-master/data:/var/lib/mysql \
> -v /mydata/mysql-master/conf:/etc/mysql/conf.d \
> -e MYSQL_ROOT_PASSWORD=root \
> -d mysql:5.7
更多推荐

所有评论(0)