Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何释放psql端口?_Linux_Postgresql_Port_Psql - Fatal编程技术网

Linux 如何释放psql端口?

Linux 如何释放psql端口?,linux,postgresql,port,psql,Linux,Postgresql,Port,Psql,我已经搜索了一段时间如何关闭psql端口,但大多数答案都是关于使用\q关闭psql命令行,这不是我想要的 我的问题是,我笔记本电脑上的postgresql正在5432端口上运行和侦听,但我想将5432端口用于其他用途。通常我运行netstat-plnt查找要终止的进程,但在这种情况下,侦听端口5432的进程没有进程id 你知道我如何释放端口5432吗 Proto Recv-Q Send-Q本地地址外部地址状态PID/程序名 tcp 0 0 127.0.0.1:5432 0.0.0.0:*听-

我已经搜索了一段时间如何关闭psql端口,但大多数答案都是关于使用
\q
关闭psql命令行,这不是我想要的

我的问题是,我笔记本电脑上的postgresql正在5432端口上运行和侦听,但我想将5432端口用于其他用途。通常我运行
netstat-plnt
查找要终止的进程,但在这种情况下,侦听端口5432的进程没有进程id

你知道我如何释放端口5432吗


Proto Recv-Q Send-Q本地地址外部地址状态PID/程序名
tcp 0 0 127.0.0.1:5432 0.0.0.0:*听-

psql
是连接到postgres服务器的客户端。关闭与
\q
的连接即可完成会话。发生这种情况时,该会话的后端将停止,所以通过关闭连接,您只能释放服务器上的pid。服务器继续监听端口5432

如果您想停止监听端口5432,可以使用
pg_ctl stop
停止postgres服务器,甚至在postgres.conf中为其分配不同的端口,这样您就可以并行运行这两个程序

更新
如果您是从软件包(Ubuntu/Debian/Fedora/RHEL/CentOS/etc)安装的,您应该使用系统服务管理器来停止postgresql。e、 g.在RHEL 7或Fedora中,
sudo systemctl stop postgresql-9.6
(或任何您的版本)而不是
pg_ctl
(引用Craig Ringer)

当我运行
pg_ctl stop
时,它会给我一个错误
pg_ctl:command not found
find/-name pg_ctl
,因为如果您是从软件包安装的,root应该提供帮助(Ubuntu/Debian/Fedora/RHEL/CentOS/etc)您应该使用系统服务管理器来停止postgresql。例如,在RHEL 7或Fedora中,
sudo systemctl stop postgresql-9.6
(或任何您的版本)而不是pg_ctl@CraigRinger感谢您的通知!更新了应答器您必须以root用户身份运行
netstat
命令(使用
sudo
)为了查看PID和程序名,您可以编辑
/etc/postgresql…/…/main/postgresql.conf
,以更改端口号。