mysql命令行查看端口占用_linux下常用命令查看端口占用
在Linux使用過程中,需要了解當前系統開放了哪些端口,并且要查看開放這些端口的具體進程和用戶,可以通過netstat命令進行簡單查詢
netstat命令各個參數說明如下:
-t : 指明顯示TCP端口
-u : 指明顯示UDP端口
-l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序)
-p : 顯示進程標識符和程序名稱,每一個套接字/端口都屬于一個程序。
-n : 不進行DNS輪詢,顯示IP(可以加速操作)
即可顯示當前服務器上所有端口及進程服務,于grep結合可查看某個具體端口及服務情況··
netstat -ntlp ? //查看當前所有tcp端口·
netstat -ntulp |grep 80 ? //查看所有80端口使用情況·
netstat -ntulp | grep 3306 ? //查看所有3306端口使用情況·
Linux查看程序端口占用情況
使用命令:
ps -aux | grep tomcat
發現并沒有8080端口的Tomcat進程。
使用命令:netstat –apn
查看所有的進程和端口使用情況。發現下面的進程列表,其中最后一欄是PID/Program name
發現8080端口被PID為9658的Java進程占用。
進一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看
就可以明確知道8080端口是被哪個程序占用了!然后判斷是否使用KILL命令干掉!
方法二:直接使用 netstat ? -anp ? | ? grep ?portno
即:netstat -anp|grep 8080
netstat -anp|grep 8080 --> tcp ? ? ? ?0 ? ? ?0 0.0.0.0:8080 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN ? ? ?28500/java
ps -aux | grep 28500 ?--> r/local/tomcat9-jforum/tomcat
安裝lsof list open files//---也可以 ?netstat -tunlp|grep 端口號 ?netstat -anp|grep 端口號
yum install lsof
lsof -i:8080 查看8080端口占用
lsof abc.txt 顯示開啟文件abc.txt的進程
lsof -c abc 顯示abc進程現在打開的文件
lsof -c -p 1234 列出進程號為1234的進程所打開的文件
lsof -g gid 顯示歸屬gid的進程情況
lsof +d /usr/local/ 顯示目錄下被進程開啟的文件
lsof +D /usr/local/ 同上,但是會搜索目錄下的目錄,時間較長
lsof -d 4 顯示使用fd為4的進程
lsof -i 用以顯示符合條件的進程情況
lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
46 --> IPv4 or IPv6
protocol --> TCP or UDP
hostname --> Internet host name
hostaddr --> IPv4地址
service --> /etc/service中的 service name (可以不止一個)
port --> 端口號 (可以不止一個)
lsof -i //顯示所有打開的端口
lsof -i:80 //顯示所有打開80端口的進程
lsof -i -U //顯示所有打開的端口和UNIX domain文件
其實我一般這樣用:
[root@VM_39_230_centos bin]# lsof -i:3306
COMMAND ? PID ?USER ? FD ? TYPE DEVICE SIZE/OFF NODE NAME
mysqld ?16422 mysql ? 19u ?IPv6 148794 ? ? ?0t0 ?TCP *:mysql (LISTEN)
mysqld ?16422 mysql ? 39u ?IPv6 643698 ? ? ?0t0 ?TCP localhost:mysql->localhost:36582 (ESTABLISHED)
mysqld ?16422 mysql ? 45u ?IPv6 643699 ? ? ?0t0 ?TCP localhost:mysql->localhost:36584 (ESTABLISHED)
mysqld ?16422 mysql ? 46u ?IPv6 643700 ? ? ?0t0 ?TCP localhost:mysql->localhost:36586 (ESTABLISHED)
mysqld ?16422 mysql ? 47u ?IPv6 643702 ? ? ?0t0 ?TCP localhost:mysql->localhost:36588 (ESTABLISHED)
mysqld ?16422 mysql ? 48u ?IPv6 643704 ? ? ?0t0 ?TCP localhost:mysql->localhost:36590 (ESTABLISHED)
java ? ?17302 ?root ?122u ?IPv4 643695 ? ? ?0t0 ?TCP localhost:36582->localhost:mysql (ESTABLISHED)
java ? ?17302 ?root ?123u ?IPv4 643701 ? ? ?0t0 ?TCP localhost:36588->localhost:mysql (ESTABLISHED)
java ? ?17302 ?root ?124u ?IPv4 643696 ? ? ?0t0 ?TCP localhost:36586->localhost:mysql (ESTABLISHED)
java ? ?17302 ?root ?125u ?IPv4 643697 ? ? ?0t0 ?TCP localhost:36584->localhost:mysql (ESTABLISHED)
java ? ?17302 ?root ?126u ?IPv4 643703 ? ? ?0t0 ?TCP localhost:36590->localhost:mysql (ESTABLISHED)
或者
[root@VM_39_230_centos bin]# netstat -ntulp | grep 3306
tcp6 ? ? ? 0 ? ? ?0 :::3306 ? ? ? ? ? ? ? ? :::* ? ? ? ? ? ? ? ? ? ?LISTEN ? ? ?16422/mysqld
找到pid ?然后
[root@VM_39_230_centos bin]# ps -aux | grep 16422
mysql ? ?16422 ?0.0 47.7 1340428 485944 ? ? ? ?Sl ? Jun29 ? 1:46 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/lib/mysql/VM_39_230_centos.err --pid-file=/var/lib/mysql/VM_39_230_centos.pid
root ? ? 25713 ?0.0 ?0.0 112616 ? 700 pts/0 ? ?R+ ? 17:04 ? 0:00 grep --color=auto 16422
總結
以上是生活随笔為你收集整理的mysql命令行查看端口占用_linux下常用命令查看端口占用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 爱步包包印度加工的怎么样?
- 下一篇: python mysql connect