我已经在 ubuntu 12.04 64 位上安装了 PostgreSQL 9.1。我尝试运行 Aplication Stack Builder 并安装 pgAgent。
首先,系统要求我输入 root 密码,我提供了该密码,因为我选择了端口 5433 上的 PostgreSQL 9.1 作为唯一选项。在下一个屏幕上,我勾选了 pgAgent,然后单击“下一步”几次,进入“设置”屏幕,并验证 postgradeSQL 安装详细信息。主机是本地的,用户名是 postgres,我输入了我在打开 pgAdmin III 时使用的 postgrade 密码。单击“下一步”时,出现警告:
psql.bin: could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1)
and accepting TCP/IP connection on port 5432?
当我尝试使用 pgAdmin 时,它确实可以使用我提供的密码,但在我看来,这个密码似乎不被 Stack Builder 接受。我在开始时也提供了我的 root 密码,因此它应该能够使用 sudo 权限执行所有操作。我不知道现在该怎么做,也不知道问题是什么。我应该在 Stack Builder 之前运行其他程序吗?
我知道这看起来像是密码问题,但我试过了所有方法,这不是一个简单的密码问题。有人遇到过类似的问题或知道该怎么办吗?
答案1
PgAgent-IIIpsql
可以使用 unix 套接字连接,而 StackBuilder 似乎正在使用 TCP/IP。
psql -h 127.0.0.1 postgres
是否会产生相同的错误?如果是,请检查postgresql.conf
并查看listen_addresses
设置为何;它可能设置为不监听 TCP/IP。有关详细信息以及如何更改它,请参阅文档:运行时配置参数
如果port
指令postgresql.conf
设置为除默认端口之外的端口5432
(例如)5433
,则必须在连接的每个地方指定该端口。例如:
psql -h 127.0.0.1 -p 5433 postgres