docker容器的mysql启动不了_用docker安装mysql,启动容器后,mysql没有启动

当使用Docker启动MySQL容器后,发现MySQL服务并未正常运行。问题可能在于CMD和ENTRYPOINT指令的使用不当。在不指定环境变量的情况下,mysqld无法完成初始化。测试表明,若不提供-e环境参数,容器会因找不到必要的配置而报错。解决方案包括正确设置环境变量或调整启动命令。
摘要由CSDN通过智能技术生成

1.说明你mysql没有启动,因为你后面的/bin/bash已经暴露问题了。

2.试一试这样启动$docker run -d mysql

$docker exec -it $container_id /bin/bash

852a014b10db1c8b5a964954a8e5ba15.png

问题的原因,可以看看官方对CMD 和 entrypoint指令得描述,你就懂了。

如下是我测试效果

#1.模拟你得效果,这里不会报错,是因为没有执行mysqld进行初始化,bash已经覆盖了指令

docker@default:~$ docker run -it mysql bash

root@8b767c162afd:/# ps -aux | grep mysql

root         7  0.0  0.0  11128   984 ?        S+   03:04   0:00 grep mysql

#2.报错,因为没有加-e环境参数,说明mysqld执行了初始化,未找到环境变量

docker@default:~$ docker run -d mysql

9212525aedf8f5586548fbc1d1e4fa130fd0ce294ac03c2d00a1c1d9945455a5

docker@default:~$ docker exec -it 92 bash

Error response from daemon: Container 9212525aedf8f5586548fbc1d1e4fa130fd0ce294ac03c2d00a1c1d9945455a5 is not running

mysql-db

docker@default:~$ docker logs 92

error: database is uninitialized and password option is not specified

You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

docker@default:~$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值