【问题标题】:"No such database" error on pgAdmin when connecting through pgbouncer通过 pgbouncer 连接时 pgAdmin 出现“没有这样的数据库”错误
【发布时间】:2019-09-19 12:16:48
【问题描述】:

我在服务器 A(端口 6432,主机地址:10.XX.XX.92)上配置了 pgbouncer,它将接受服务器 B 上运行的 postgres 服务器的连接(端口 5433 ,主机地址:10.XX.XX.90)。这个 postgres 服务器有 2 个数据库。(postgres 和 db1

我有 2 个不同类型的用户(user1、user2)将连接到同一个数据库(db1)。这两个用户在 db1 上拥有不同的权限集。

以下是我如何配置 pgbouncer.ini 文件的示例。

database1 = host=10.XX.XX.90 port=5433 user=user1 password='pwd1' dbname=db1
database2 = host=10.XX.XX.90 port=5433 user=user2 password='pwd2' dbname=db1

现在当我尝试通过 pgAdmin 连接到这个数据库时,它给了我一个错误 "No such database"

以下是我用来通过 pgadmin 为 user1 连接的连接变量。

主机 = 10.XX.XX.92
端口 = 6432
维护数据库 = database1
用户名 = user1
密码 = pwd1

但是当我使用相同的变量并尝试使用 DBeaver 或 psql 连接时,我能够成功连接到数据库 db1。

有谁知道这只是 pgAdmin 问题还是我在这里遗漏了什么。

注意:我还尝试了另一件事。如果在 pgbouncer.ini 中,我将数据库变量(database1)命名为与实际数据库名称(db1)相同,pg 管理员让我连接到数据库。如果我只有一个用户连接到数据库,但我有两个用户并且他们在配置文件中不能有相同的连接名称,这对我来说是可行的。

【问题讨论】:

  • 您是否在 DBeaver 或 psql 上设置了某种端口转发?我已经看到端口号不匹配的此错误,在您的示例中,您有 54336432
  • 没有。我只是能够直接连接到数据库而无需明确设置任何内容。我认为这与 pgAdmin 中的维护数据库有关,但我可能错了。
  • 我也遇到了同样的问题。经过这么长时间你修好了吗?编辑:我想我在这里找到了答案stackoverflow.com/a/41500185/5341247

标签: postgresql pgadmin-4 pgbouncer


【解决方案1】:

在这里试试: https://stackoverflow.com/a/41500185/5341247

将此添加到您的连接字符串:

EntityAdminDatabase=DATABASE_NAME

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-09
    • 1970-01-01
    • 2021-07-16
    • 1970-01-01
    • 2021-08-19
    • 2016-08-26
    • 1970-01-01
    • 2017-05-14
    相关资源
    最近更新 更多