我开始玩docker和docker-compose,发现mysql容器有问题。我正在使用官方的mysql:latest镜像。当我运行docker-compose up时出现此错误:
Error starting userland proxy: listen tcp 0.0.0.0:3306: bind: address already in use
为确保我的docker-compose.yml没问题,我测试了端口3307,一切正常。但是我想使用标准3306。

当然,我杀死了本地mysql守护程序,但是错误仍然存​​在。所以我跑
netstat -lnp | grep 3306
这就是我发现的:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN -

我还执行了lsof -i TCP:3306,但没有得到任何结果。

如何释放3306端口?谢谢!

最佳答案

好吧,让我们尝试Sudo

sudo netstat -lpn |grep :3306

您将看到该端口的proceesID,使用这些命令执行
kill -9 PID //PID processID used by 3306 Port

在这里-9是为了强行杀死,希望这会有所帮助

关于mysql - 端口3306繁忙,但没有进程使用它,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44271159/

10-11 02:23