PostgreSQL 如何启用 postgresql-9.6 进行远程连接

PostgreSQL 如何启用 postgresql-9.6 进行远程连接

在本文中,我们将介绍如何启用 PostgreSQL 9.6 版本以支持远程连接。PostgreSQL 是一种开源的关系型数据库管理系统,被广泛用于各种应用程序中。默认情况下,PostgreSQL 是不允许远程连接的,这是为了提高数据库的安全性。但是,在某些情况下,允许远程连接是必要的,比如在分布式系统中或者与其他应用程序进行数据交互。下面将介绍如何配置 PostgreSQL 9.6 版本以启用远程连接。

阅读更多:PostgreSQL 教程

确认 PostgreSQL 版本

首先,我们需要确认使用的是 PostgreSQL 9.6 版本。可以通过以下命令来检查:

postgres --version

如果已经安装了其他版本的 PostgreSQL,可以使用以下命令列出所有的 PostgreSQL 版本:

pg_lsclusters

修改 PostgreSQL 配置文件

接下来,我们需要修改 PostgreSQL 的配置文件以启用远程连接。默认情况下,PostgreSQL 的配置文件位于 /etc/postgresql/<version>/main/postgresql.conf(在某些系统中可能位于其他位置)。使用编辑器打开该文件:

sudo vi /etc/postgresql/9.6/main/postgresql.conf

找到并修改以下行:

#listen_addresses = 'localhost'

取消注释并将其修改为:

listen_addresses = '*'

这将允许 PostgreSQL 监听所有网络接口上的连接请求。

配置访问控制规则

在启用远程连接之前,我们还需要配置访问控制规则以确保仅允许授权的客户端进行连接。默认情况下,PostgreSQL 的访问控制规则位于 /etc/postgresql/9.6/main/pg_hba.conf(在某些系统中可能位于其他位置)。使用编辑器打开该文件:

sudo vi /etc/postgresql/9.6/main/pg_hba.conf

在文件的末尾追加以下内容:

host    all             all             0.0.0.0/0               md5

上述规则允许来自所有地址的客户端进行连接,使用 md5 认证方式。如果你只想允许特定的主机进行连接,可以将 0.0.0.0/0 替换为特定的 IP 地址段。

重启 PostgreSQL 服务

完成以上配置后,我们需要重启 PostgreSQL 服务以使更改生效。可以使用以下命令重启 PostgreSQL 服务:

sudo systemctl restart postgresql

或者使用以下命令(取决于你的系统):

sudo service postgresql restart

连接到远程 PostgreSQL 数据库

完成以上步骤后,我们就可以通过远程主机连接到 PostgreSQL 数据库了。使用以下命令连接到你的 PostgreSQL 数据库:

psql -h <hostname/ip> -p <port> -U <username> -d <database>

其中,hostname/ip 是 PostgreSQL 服务器的主机名或 IP 地址,port 是 PostgreSQL 服务器监听的端口(默认为 5432),username 是要连接的数据库用户的用户名,database 是要连接的数据库名。

例如,要连接到位于 IP 地址为 192.168.0.100 的远程 PostgreSQL 数据库,使用用户名 postgres,数据库名为 mydb,可以执行以下命令:

psql -h 192.168.0.100 -p 5432 -U postgres -d mydb

如果一切设置正确,你应该能够成功连接到远程 PostgreSQL 数据库了。

总结

通过修改 PostgreSQL 的配置文件和访问控制规则,我们可以启用 PostgreSQL 9.6 版本以支持远程连接。在进行远程连接之前,务必确保只允许授权的客户端进行连接,并采取相应的安全措施以保护数据库的安全性。希望本文对你有所帮助!

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程