我有PSQL运行,并试图得到一个perl应用程序连接到数据库。是否有命令来查找数据库正在运行的当前端口和主机?


当前回答

这个命令将提供postgres端口号

 \conninfo

如果Postgres运行在Linux服务器上,也可以使用下面的命令

sudo netstat -plunt |grep postgres

或者(如果是邮政局长送来的)

sudo netstat -plunt |grep postmaster

你会看到类似的东西

tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      140/postgres
tcp6       0      0 ::1:5432                :::*                    LISTEN      140/postgres

在本例中,端口号为5432,也是默认端口号

信贷:链接

其他回答

select inet_server_addr( ), inet_server_port( );

PostgreSQL默认端口号为5432。运行数据库的主机应该是由您的主机提供商提供的;如果没有指定,我猜它应该是与web服务器相同的主机。通常这将被配置为localhost,假设您的web服务器和数据库服务器在同一主机上。

@ a_horis_with_no_name答案的补充。 获取主机名:

SELECT boot_val,reset_val FROM pg_settings WHERE name='listen_addresses';;
service postgresql status

返回: 10/main(端口5432):online

我运行的是Ubuntu 18.04

从终端你可以简单地做一个“postgres列表集群”:

pg_lsclusters

它将返回Postgres版本号、集群名称、端口、状态、所有者以及数据目录和日志文件的位置。