根据进程号排查进程及路径(通过进程号查询数据库)

createh55个月前 (12-30)技术教程73

根据进程号排查进程及路径

netstat -ntpl


1、lsof -i:端口号

2、netstat -tunlp|grep 端口号

都可以查看指定端口被哪个进程占用的情况

ls -al /proc/22938/{cwd,exe}

查看某个远程IP的连接情况

lsof -i@10.30.80.220

根据连接FD查看创建时间

ll /proc/10921/fd/13

1.查看连接所在的进程号,netstat -npt | grep port,可以得到进程号

tcp 0 0 ::ffff:192.168.251.43:51520 ::ffff:192.168.110.231:8998 ESTABLISHED 32439/java


2.查看这个进程打开的这个连接的文件名,lsof -p pid | grep port,可以得到这个进程在这个端口上的连接的文件编号:

java 32439 root 118u IPv6 165707367 0t0 TCP SC-HOST-43:51518->192.168.110.231:8998 (ESTABLISHED)

java 32439 root 126u IPv6 165707404 0t0 TCP SC-HOST-43:51520->192.168.110.231:8998 (ESTABLISHED)

大家注意到118u和126u是这两个连接的文件名,然后去ll /proc/pid/fd/118,就可以看到这个连接的建立时间了


查看机器上socket连接的创建时间

数据库实例看到连接情况

10.2.89.14:22115

到10.2.89.14机器上排查端口 22115

[root@Q-gz-pro-ms-usercenter-01 ~]$ lsof -i:22115

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

java 12427 root 39u IPv4 504277892 0t0 TCP Q-gz-pro-ms-usercenter-01:22115->10.30.80.220:mysql (ESTABLISHED)


[root@Q-gz-pro-ms-usercenter-01 ~]$ lsof -i@10.30.80.220

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

java 12427 root 39u IPv4 504277892 0t0 TCP Q-gz-pro-ms-usercenter-01:22115->10.30.80.220:mysql (ESTABLISHED)


#查询PID对应的FD打开时间

[root@Q-gz-pro-ms-usercenter-01 ~]$ ll /proc/12427/fd/39

lrwx------ 1 root root 64 Dec 12 21:28 /proc/12427/fd/39 -> socket:[504277892]

相关文章

几种获取resources目录下的文件方式

前言一般我们的配置信息默认都是会配置在/src/main/resources/application.properties(或者application.yml)文件中,当然,也可以在resources...

Java路径-37-Java的Iterator(java路径是什么意思)

1 Iterator的概念在Java中,如果我们需要遍历一个集合(Collection)或者数组(Array),我们通常会使用for循环来遍历。但是,当我们需要在遍历的过程中修改集合或者数组时,这种方...

Java学习目录(thinking in java目录)

一、Java基础Java基础-继承Java基础-抽象Java基础-接口Java基础-多态Java基础-重写Java基础-匿名对象Java基础-内部类Java基础-final、static关键字Java...

Java路径-34-Java的LinkedList(java里面linkedlist)

1 LinkedList的概念LinkedList本质上是一个双向链表。那么什么是链表呢?链表原先是C/C++的概念,是一种线性的存储结构,意思是将要存储的数据存在一个存储单元里面,这个存储单元里面除...

Java 获取属性和环境变量的方法(java获取当前环境编码格式)

1.简介在Java应用程序中,Java将自动导入包java.lang, 包含从NullPointerException到Object,Math和String的许多常用类。java.lang.Syste...

在Java程序中监听mysql的binlog(java监听mysql数据表变化)

1、背景最近在开发的过程中遇到这么一个问题,当产生某种类型的工单后,需要实时通知到另外的系统,由另外的系统进行数据的研判操作。 由于某种原因, 像向消息队列中推送工单消息、或直接调用另外系统的接口、或...