linux查看mysql3306端口是否被占用

配置linux mysql的web环境,会出现mysql启动不了,我们通常第一反应就是查询mysql的默认端口3306是否被占用,那么如何查看linux mysql的3306端口是否被占用?

查看3306端口的是否占用

[root@yunwei ~]# netstat -an | grep :3306
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN

// 查询到,3306端口处在LISTEN被占用的状态

查询3306端口是否被占用方法

[root@gogo ~]# lsof -i :3306
//正常情况下可以查询
//如果显示“-bash: lsof: command not found”,则需要安装下lsof,参考http://yunwei.fun/database/mysql/49/

如果显示“-bash: lsof: command not found”,则需要安装下lsof,参考http://yunwei.fun/database/mysql/49/

查看3306端口是被哪个服务正在使用

[root@yunwei ~]# netstat -tunlp | grep :3306
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1872/mysqld

//查询到3306端口正在被mysql使用

查询到3306端口正在被mysql使用

如果3306端口被其他进程占用怎么办(不是mysql)

我们通过lsof -i :3306命令,查询到占用3306端口进程的id后,kill掉该进程的id即可。

[root@gogo ~]# lsof -i :3306
//先查询占用3306端口的进程id

[root@yunwei ~]# kill -9 进程id
//再kill掉这个进程id,最后启动mysql即可

Linux启动/停止/重启Mysql的方法请参考: