关于postgresql:使用PSQL命令查找主机名和端口

Find the host name and port using PSQL commands

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


1
2
3
SELECT *
FROM pg_settings
WHERE name = 'port';


此命令将为您提供postgres端口号

1
 \conninfo

如果postgres在Linux服务器上运行,您还可以使用以下命令

1
sudo netstat -plunt |grep postgres

或者(如果它是postmaster)

1
sudo netstat -plunt |grep postmaster

你会看到类似的东西

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

在这种情况下,端口号是5432,这也是默认端口号

学分链接


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


select inet_server_addr();为您提供服务器的IP地址。


select inet_server_port();为您提供服务器的端口。


1
SELECT inet_server_addr( ), inet_server_port( );


这是非sql方法。有关图像本身的说明。选择要查找其信息的服务器,然后按照步骤操作。

enter image description here


postgresql端口在postgresql.conf文件中定义。

对于我来说,在Ubuntu 14.04中它是:/etc/postgresql/9.3/main/postgresql.conf

里面有一条线:

1
port = 5432

更改数量需要重启postgresql才能生效。


您可以在psql \conninfo中使用该命令
你会得到You are connected to database"your_database" as user"user_name" on host"host_name" at port"port_number".


1
service postgresql STATUS

收益:
10 / main(端口5432):在线

我正在运行Ubuntu 18.04


1
SELECT CURRENT_USER usr, :'HOST' host, inet_server_port() port;

这使用psql内置的HOST变量,在此处记录

和postgres系统信息功能,在此处记录


转到"终端",然后输入

1
service postgres STATUS

在结果中,您可以获取端口详细信息Running postgres details

在我的情况下,它运行在端口"5432"(默认)。我正在使用CentOS 7.Hope这有帮助。