如何解决端口占用问题
2021/9/12 8:04:44
本文主要是介绍如何解决端口占用问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
当我们启动某项服务时,经常会出现 address already in use 这个错误。该错误是指当前使用的端口被某个进程占用,导致本次服务无法正常启动。通常情况下,导致端口被占用的原因有两个:
已启动的某个服务使用的也是这个端口
当前服务在上次启动后没有正常退出
本⽂将带领⼤家解决该问题。
查看端口占用情况
首先,需要确认当前要用的端口目前被什么进程占用。
macOS
打开终端,输入
lsof -i :port
,将port
换成端口号,如:8080
$ lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
main 6667 zhangpeng 7u IPv6 0x645a94383c79337f 0t0 TCP *:http-alt (LISTEN)
Linux
输入 netstat -tunlp | egrep "PID|port"
,将 port
换成端口号,如:8080
$ netstat -tunlp | egrep "PID|8080"
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 131/nginx: master p
Windows
启动命令窗口
同时点击
windows
和r
键,在输入框输入cmd
,点击回车在命令窗口中输入
netstat -ano | findstr "PID port"
,将port
换成端口号,如:8080
$ netstat -ano | findstr "PID 8080"
协议 本地地址 外部地址 状态 PID
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 16248
TCP [::]:8080 [::]:0 LISTENING 16248
TCP [::1]:8080 [::1]:51273 ESTABLISHED 16248
找到占用端口的进程后,需要自行判断一下该进程能否被终止。如果不可以,则需要换一个端口启动服务;如果可以,那么请继续往下阅读。
终止占用端口的进程
通过上文,已经找到了占用端口的进程。接下来,我们要终止它。
macOS
使用
kill -9 PID
命令终止占用端口的进程,将PID
换成要终止的进程的PID
kill -9 6667
Linux
使用
kill -9 PID
命令终止占用端口的进程,将PID
换成要终止的进程的PID
kill -9 131
Windows
使用
taskkill /PID processid /t /f
命令终止占用端口的进程,将processid
换成要终止的进程的PID
taskkill /PID 16248 /t /f
到此,占⽤着我们端⼝的进程都已被终止,我们可以愉快的启动服务了。
作者:zhangpeng
链接:https://juejin.cn/post/7005812419012329509
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
这篇关于如何解决端口占用问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?