我实际上使用了一个执行pg_dump命令的dbeaver客户端在远程服务器上。命令的启动方式如下:
pg_dump --verbose --host=127.0.0.1 --port=47855 --username=user-accounet..
我不知道dbeaver是如何创建ssh隧道的(它使用了一个堡垒(但是,这不是问题所在。问题是:当我执行下面的命令时。。
lsof -i -P -n | grep pg_dump
我得到这个:
pg_dump 14144 parcss-alexco 3u IPv4 397966 0t0 TCP 127.0.0.1:35978->127.0.0.1:47855 (ESTABLISHED)
这个地址ip:35978是什么?什么样的绑定35978->47855表示?它涉及远程ip地址吗?地方的我想了解。。
到套接字之间存在TCP连接。完全指定的套接字具有IP地址和端口号。
pg_dump
使用127.0.0.1上的47855端口作为连接的远程套接字,但另一端的套接字呢?IP地址很清楚,但端口号是多少?由于套接字没有显式绑定到具有bind(2)
的某个端口,因此connect(2)
将分配一个"临时端口"号。在你的情况下,这恰好是35978。