在 Synology DiskStation (DS216j) 和 pgAdminIII 上安装 PostgreSQL

在 Synology DiskStation (DS216j) 和 pgAdminIII 上安装 PostgreSQL

我的 Linux 计算机上安装了本地 postgreSQL 数据库。我想在 NAS Synology DiskStation (DS216j) 上运行此数据库。

我一直遵循此准则直到第 2 步: http://iamsensoria.com/post/130235198606/postgres-on-synology (我能够创建数据库和用户)但是我无法执行步骤3。

我正在尝试使用 pgAdminIII 连接到数据库,但收到一条错误消息:

“服务器不接受连接:连接库报告无法连接到服务器:Oppkobling nektes 服务器是否在主机“192.168.0.16”上运行并接受端口 5432 上的 TCP/IP 连接?如果遇到此消息,请检查如果您尝试联系的服务器实际上正在给定端口上运行 PostgreSQL,请使用 ping 或等效工具测试您的客户端与服务器主机之间的网络连接是否正确。出于安全原因,PostgreSQL 最初不会侦听服务器计算机上的所有可用 IP 地址,为了通过网络访问服务器,您需要首先启用对地址的侦听,对于从版本 8.0 开始的 PostgreSQL 服务器,这是受控制的。使用 postgresql.conf 文件中的“listen_addresses”参数,您可以输入服务器应侦听的 IP 地址列表,或者仅使用“*”来侦听所有可用的 IP 地址(对于早期服务器)。 7.4),您需要将“tcpip_socket”参数设置为“true”。您可以使用 pgAdmin III 中内置的 postgresql.conf 编辑器来编辑 postgresql.conf 配置文件。更改此文件后,需要重新启动服务器进程才能使设置生效。如果您仔细检查了配置但仍然收到此错误消息,则仍然不太可能遇到致命的 PostgreSQL 错误行为。您可能有一些低级网络连接问题(例如防火墙配置)。在向 PostgreSQL 社区报告错误之前请彻底检查这一点”

ps:我在汉学DS-216J上打开了5432端口。

有人经历过这个吗?提前致谢。

我也使用这个资源:

https://askubuntu.com/questions/423165/remotely-access-postgresql-database

------更新1----

ssh [email protected]
testuser@test:~$ sudo -s
sh-4.3# su - postgres
postgres@test:~$ psql
psql (9.3.14)
 Type "help" for help.
postgres=#  \l

---------------------------------

 download         | DownloadStation 
 mediaserver    | MediaIndex      
 mydb               | postgres       
 photo               | PhotoStation    
 postgres          | postgres       
 template0        | postgres        | SQL_ASCII | C       | C     | =c/postgres   
                                                   postgres=CTc/postgres
 template1      | postgres        | SQL_ASCII | C       | C     | =c/postgres   
                postgres=CTc/postgres
 usermydb       | postgres        | SQL_ASCII | C       | C     | 
 video_metadata | VideoStation    | SQL_ASCII | C       | C     | 

------------------------------------------------------------
postgres=# \c mydb
You are now connected to database "mydb" as user "postgres".
mydb=# SHOW hba_file;
          hba_file           
-----------------------------
 /etc/postgresql/pg_hba.conf
(1 row)

    mydb=# sudo vim /etc/postgresql/pg_hba.conf   // NOT WORKING
    mydb=# sudo vim /etc/postgresql/9.1/main/pg_hba.conf // NOT WORKING

答案1

问题是 Postgres 绑定到您的环回地址 (127.0.0.1)。这通常意味着您的数据库不会接受环回之外的连接。根据你的运行结果很明显netstat

解决方案:

您需要修改 pg_hba.conf 文件以允许外部连接(最好是您 PC 的 IP 地址)。看看下列的。我不是 100% 知道您使用的 Postgres 版本,但我无法想象每个版本在配置 pg_hba.conf 之间存在巨大差异。

相关内容