1.问题闪现:###

初次up mysql报3306端口被占用

yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ docker-compose up -d
myshop_tomcat is up-to-date
Starting myshop_mysql ...
myshop_redis is up-to-date
Starting myshop_mysql ... error ERROR: for mysql Cannot start service mysql: driver failed programming external connectivity on endpoint myshop_mysql (c42794af6a45ae1f176660abcd493c6c6345ddaec5c30ac84761e75cd3848484): Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use
ERROR: Encountered errors while bringing up the project.

2.尝试解决手段:###

杀死占用对应端口进程

yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ sudo netstat -apn | grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 9727/mysqld
#kill3306端口占用的进程
yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ sudo kill -9 9727
#再次查询发现3306端口还是被占用
yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ sudo netstat -apn | grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 6623/mysqld

mysqld杀不死!!!

2.彻底解决手段:###

一旦运行MySQL镜像,MySQL 服务器自启动,ubuntu下彻底停止mysql:sudo /etc/init.d/mysql stop

#ubuntu下彻底停止mysql
yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ sudo /etc/init.d/mysql stop
[ ok ] Stopping mysql (via systemctl): mysql.service. #查看3306端口是否还在占用
yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ sudo netstat -apn | grep 3306 yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ docker-compose up -d
myshop_redis is up-to-date
Starting myshop_mysql ...
Starting myshop_mysql ... done yunduo@YunDuo:~/Work/Learning/Docker/docker_compose$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
32673b9daaad mysql:5.7 "docker-entrypoint.s…" 15 minutes ago Up 13 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp myshop_mysql
04f40a67818a tomcat:7 "catalina.sh run" 19 minutes ago Up 19 minutes 0.0.0.0:8080->8080/tcp myshop_tomcat
56b8e65d078c redis:5.0.2 "docker-entrypoint.s…" 19 minutes ago Up 19 minutes 0.0.0.0:6379->6379/tcp myshop_redis

【Docker】安装MySQL彻底解决3306端口占用问题的更多相关文章

  1. 安装MySQL时提示3306端口已被占用的解决方案

    之前安装过mysql,用的好好的,但是今天开启服务时报异常,无法启动.为省事,于是想到卸载重装,安装过程中发现3306已经被占用,这也是一开始服务无法启动的原因. 看到有人说用fport查看端口号,于 ...

  2. 解决Docker安装MySQL不区分大小写问题

    Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...

  3. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  4. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  5. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  6. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  7. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  8. SpringBoot Docker Mysql安装,Docker安装Mysql

    SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  9. Docker 安装mysql、oracle

    来源:唐山网站优化 Docker 安装mysql.oracle 使用ssh工具登录docker docker 的ip一般默认为192.168.99.100可以通过安装docker-machine之后, ...

随机推荐

  1. 【Leetcode堆】数据流中的第K大元素(703)

    题目 设计一个找到数据流中第K大元素的类(class).注意是排序后的第K大元素,不是第K个不同的元素. 你的 KthLargest 类需要一个同时接收整数 k 和整数数组nums 的构造器,它包含数 ...

  2. UVA_488:Triangle Wave

    PS:The input begins with a single positive integer on a line by itself indicating the number of the ...

  3. 洛谷1758 BZOJ1566 管道取珠题解

    题目链接 一道人类智慧的dp题 首先我们可以将∑ai^2转化为求取两次,两次一样的方案数 然后用f[i][j][k][l]表示第一个人在第一个串中取到i第二个串中取到j 第二个人在一个串中取到k第二个 ...

  4. [React Native]访问操作系统剪贴板 Clipboard

    我们之前学习了TextInput组件, 有时候我们需要在TextInput组件中复制或者粘贴一些文字. React Native为开发者提供了 Clipboard API,Clipboard 组件可以 ...

  5. hdu 2412 Party at Hali-Bula【树形dp】

    HDU 2412 和poj 2342(hdu 1520)差不多,多了一个判断最优解是(Yes)否(No)唯一.关键问题也在这个判断最优解是否唯一上. 先定义dp[u][2],表示选(dp[][1])或 ...

  6. 随机数专题 Day08

    package com.sxt.arraytest2; import java.util.Arrays; /* * 随机数专题 * Math类的random()方法 * m~n的随机数 * 公式:(i ...

  7. Python数据集变量及相关含义

  8. Windows命令行创建计划任务

    Windows上创建计划任务,尽管可以通过控制面板中的"计划任务"来创建,但是,有可能会报错: 这时,可以在cmd中使用命令行工具schtasks来创建.比如想要创建一个名为&qu ...

  9. P2P需集齐四大证照

    今后做P2P需集齐四大证照 比牌照制还严 2016-09-05 11:53:24 分类:热点观察 作者:汪祖刚 8月24日,P2P网贷监管细则在千呼万唤中始出来,整个行业内外的关注热度可谓史无前例.有 ...

  10. Libev源码分析04:Libev中的相对时间定时器

    Libev中的超时监视器ev_timer,就是简单的相对时间定时器,它会在给定的时间点触发超时事件,还可以在固定的时间间隔之后再次触发超时事件. 所谓的相对时间,指的是如果你注册了一个1小时的超时事件 ...