Docker启动MySql时Exited (1) 8 seconds ago或者Error response from daemon: Container xx is not running的解决方法

时间:2024-10-10 07:34:44

      本人小白,跟着老师学习《谷粒商城》过程中遇到这个问题,具体原理我也不清楚,多方搜索,以下方案可以解决该问题。

问题1:找的网图

 或者出现以下情况:

问题2:

当修改好配置后,重启mysql后,却进不去控制台,出现以下问题:

Error response from daemon: Container xxxxxxxxxxx is not running

解决办法(下方有图):

步骤一 :删除所有已停止的容器 docker rm $(docker ps -a -q) 

步骤二:删除所有镜像 docker rmi $(docker images -q)

步骤三:重新拉取mysql,操作为 docker pull mysql:5.7

步骤四:重新创建实例并启动

docker run -p 3306:3306 --name mysql \ -v /mydata/mysql/log:/var/log/mysql \ -v /mydata/mysql/data:/var/lib/mysql \ -v /mydata/mysql/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORD=root \ -d mysql:5.7

步骤五:检查状态 docker ps

以上即可解决Exited (1) 8 seconds ago的问题。

步骤六:修改你的conf文件,进入你的conf文件中,vi ,然后在conf文件中输入以下设置

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

然后重启mysql后,输入docker exec -it mysql /bin/bash 即可解决这个问题Error response from daemon: Container xxxxxxxxxxx is not running