问题描述
docker 启动MySQL失败,我通过docker logs -f mysql命令查看日志发现以下错误
[ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.WHijR591XA
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!
该日志大概意思就是说没找到 /etc/mysql/conf.d 这个文件夹。原因其实是官方的配置文件已经不放在/etc/mysql底下了,这底下就两个空文件夹。
解决方案
1.先创建一个简单的mysql容器实例
docker run -p 3306:3306 --name sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
2.复制里面的/etc/mysql文件夹
docker cp sample-mysql:/etc/mysql/. /mydata/mysql/conf
3.删除掉临时容器文章来源:https://www.toymoban.com/news/detail-693487.html
docker rm -f sample-mysql
4.启动完整的容器命令文章来源地址https://www.toymoban.com/news/detail-693487.html
docker run \
-p 3306:3306 \
--name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
--privileged=true
-d mysql:5.7
到了这里,关于docker 启动MySQL一直处于restarting状态的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!