【问题标题】:Connecting to Postgres from Remote Network从远程网络连接到 Postgres
【发布时间】:2022-01-26 11:52:25
【问题描述】:

无法从远程网络从 Postgres 获取数据。我们为我们的 MItel 系统设置了 Postgres DB,来自不同 VLAN 的用户无法获取数据。他们可以成功连接到数据库,但连接时“找不到记录”。与数据库连接到同一vlan的用户可以正常连接并获取所有数据(调用历史记录),但来自分支机构的用户无法接收数据。

我在 pg_hba.conf 文件中的设置是:

host   all    all    10.0.0.0/24   trust  (I've tried md5 as well)
host   all    all    172.0.0.0/24  trust

在 Postgressql.conf 我有:

Listen_addresses = '*'

所有用户都使用相同的数据库用户名和密码。

【问题讨论】:

  • 远程用户可以连接到数据库,但得到“未找到记录”是什么意思。这真的没有任何意义。如果他们可以连接并拥有特权,那么他们似乎应该能够查询。你有防火墙问题吗?
  • 大约有 20 个用户连接。 10.0.0.0 上的用户可以正常连接并获取数据。网络 172.0.0.0 上的用户可以连接到数据库(设置了 MD5 或 TRUST),但无法从数据库中获取数据。
  • Mitel 软件有一个通话记录选项,我们可以在其中使用测试连接按钮设置用户名、密码、数据库名称和服务器名称。所有这些都设置好了,结果是成功的。但是通话记录中没有显示任何数据。说没有记录源。完全没有防火墙问题。
  • 最好的猜测是来自 10.0.0.0 的用户没有连接到与其他用户相同的数据库。我要说它具有相同的名称但不同的端口号。验证两组用户的所有连接设置是否相同。还要查看 Postgres 日志以了解您知道有数据的数据库并查找连接。这可能需要启用log_connectionslog_disconnections,请参阅此处What to log
  • 我会试一试。所有用户都通过 Mmitel 软件使用这些值连接数据库用户名 - ipconsoleattendant,数据库用户密码 - ######,数据库服务器名称 - MICC01。 adn 数据库名称 - IP_Console。所有用户都有这些设置,并且 Mitel 软件有用户名和数据库名称硬设置(意味着无法更改)所有用户都是相同的。

标签: postgresql


【解决方案1】:

我发现了需要放入 pg_hba.conf 文件的内容。需要读取的行 托管所有所有 0.0.0.0/0 md5

不太清楚为什么网络地址或子网不起作用,但它们不起作用。无论出于何种原因,这条线路都有效并且所有数据都在流动。谢谢

【讨论】:

    猜你喜欢
    • 2013-12-24
    • 1970-01-01
    • 2011-09-03
    • 2014-07-06
    • 2020-07-08
    • 2021-06-28
    • 2020-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多