Docker中Mysql容器无法停止无法删除如何解决

发布时间:2023-03-07 10:00:47 作者:iii
来源:亿速云 阅读:94

这篇文章主要介绍“Docker中Mysql容器无法停止无法删除如何解决”,在日常操作中,相信很多人在Docker中Mysql容器无法停止无法删除如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker中Mysql容器无法停止无法删除如何解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Mysql容器无法停止无法删除问题

问题

mysql容器如法停止,无法删除,也无法连接。docker stop,docker kill等命令都无效。

处理办法:

1.停止所有的容器

docker stop 容器Id

2.强制移除此容器

docker rm -f 容器id

3.清理此容器的网络占用

4.简查是否还有同名容器占用

5.重新构建容器

示例1

docker run --name mysql --restart=always \
    -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \
    -v /home/mysql/data:/var/lib/mysql \
    -p 3317:3306 \
    -e MYSQL_ROOT_PASSWORD="root" \
    -e TZ=Asia/Shanghai \

示例2

docker run --name mysql 
-v /data/mysql-data:/var/lib/mysql 
-p 33306:3306 
-e MYSQL_ROOT_PASSWORD=guest-root 
mysql:latest

启动报错:

Different lower_case_table_names settings for server ('0') and data dictiona

原因

mysql8.x版本修改区分的大小写的配置

解决方法

1、在my.cnf配置文件[mysqld]下添加

[mysqld]
 
lower_case_table_names=1

 2、docker启动mysql修改配置  添加 --lower-case-table-names=1 :

docker run --name mysql --restart=always \
    -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \
    -v /home/mysql/data:/var/lib/mysql \
    -p 3317:3306 \
    -e MYSQL_ROOT_PASSWORD="root" \
    -e TZ=Asia/Shanghai \
    -d mysql:8.0 --lower-case-table-names=1

Docker中Mysql的使用

拉取MySQL镜像

# docker pull mysql:8.0.4
docker pull mysql:5.7.5

创建可挂载磁盘目录

mkdir -p /docker/mysql
chmod -R 777 /docker/mysql

运行MySQL容器

 docker run --name mysql \
-p 3306:3306 \
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/log:/var/log/mysql \
-v /docker/mysql/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7.5

查看docker容器的运行状态:

docker ps  # 查看运行中的容器
docker ps -a # 查看所有容器的状态

停止容器

docker stop CONTAINER ID

运行已经停止的容器

docker start CONTAINER ID

删除容器

docker rm CONTAINER ID

强制删除运行中的容器

docker rm  CONTAINER ID -f

删除所有已停止的容器(display all container ID)

docker rm $(docker ps -a -q)

Docker中Mysql容器无法停止无法删除如何解决

查看镜像详情

docker image inspect IMAGE [IMAGE..]

Docker中Mysql容器无法停止无法删除如何解决

查看历史镜像

docker image history 【OPTIONS】IMAGE
docker history 【OPTIONS】IMAGE

修改镜像名称和标签

docker tag source_IMAGE【:TAG】 TARGET_IMAGE【:TAG】

进入MySQL容器

docker exec -it mysql /bin/bash

使用MySQL命令行工具连接MySQL

mysql -h localhost -u root -p

输入密码

修改root账户的认证模式

Alter USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

验证外部连接

到此,关于“Docker中Mysql容器无法停止无法删除如何解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. Docker中Dockerfile如何制作镜像
  2. 在SpringBoot中如何将Docker部署

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

docker mysql

上一篇:Python如何获取弹幕

下一篇:怎么用add方法理解ArrayList的扩容机制

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》