PostgreSQL 详情

你好,

我想知道如何访问 PostgreSQL 的详细信息?例如,在哪里可以看到密码和用户名?其他的我都知道。

请看这个主题,它在大约中间部分提供了你需要的命令系列:

3 个赞

我没想到仅仅是获取用户名和密码就会有这么大的麻烦,哈哈。

1 个赞

假设您有一个标准的 Discourse Docker 安装,您可以使用 postgres 用户连接到 postgres 数据库。无需密码:

cd /var/discourse
./launcher enter app
su postgres
psql
\c discourse

如果您想列出所有用户,可以运行 \du

3 个赞

我想从像 DBeaver 这样的桌面应用程序访问,这就是我感到好奇的原因。显然,我不想强制更改用户密码,因为这会破坏社区。

从未使用过 DBeaver,但我认为它应该能处理空密码 Connection without password is not supported · Issue #6269 · dbeaver/dbeaver · GitHub

1 个赞

嗯,那可能行,但我还收到了“FATAL: password authentication failed for user "discourse"”

请尝试使用 postgres 作为用户名。

                                   角色列表
 角色名称 |                         属性                         | 所属
-----------+------------------------------------------------------------+----------
 discourse |                                                            | {}
 postgres  | 超级用户, 创建角色, 创建数据库, 复制, 绕过 RLS | {}

必须是 discourse,但之后应该是与身份验证相关的内容。

我们配置数据库信任并允许来自同一 IP 的连接,无需密码,因此没有密码供您查找。

如果您有标准的 Discourse 安装,您将需要:

  • 更改 app.yml 配置,将 5432 端口暴露给外部世界
  • 创建一个新的用户名/密码对,该用户/密码对对您想要的表具有读取访问权限
5 个赞

是的,端口暴露一开始就很清楚。

嗯,我不知道为什么我没考虑到新用户,哈哈,那奏效了。谢谢。

1 个赞

考虑数据浏览器插件,省事多了!

1 个赞

我明白你的想法,我选择 DBeaver 的原因是我需要处理比 Discourse 更多种类的数据库,所以才决定这样做。

1 个赞

当然,这完全说得通。如果我没有更熟悉 discourse 的生态系统,我也会这样做。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.