我在 Ubuntu Hardy 上使用 Postgresql 8.4 时收到此错误:
$./postgres -D /usr/local/pgsql/data
LOG: could not bind IPv4 socket: Cannot assign requested address
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
WARNING: could not create listen socket for "localhost"
FATAL: could not create any TCP/IP sockets
这是我的主机文件内容(发现了很多关于此内容的内容,因此现在就发布它:
127.0.0.1 localhost
127.0.1.1 Home-Dev
更新:$ sudo netstat -tap | grep 5432 显示为空白。
我还应该提到这是从源代码安装的(我最初尝试从包中安装但出现了同样的错误)。
答案1
sudo /etc/init.d/postgres start
如果您通过包管理器安装了 postgres,请尝试一下。
如果再次失败,请发布内容:sudo netstat -tap | grep 5432
答案2
我没有安装环回接口。安装后,postgres 开始工作。
答案3
假如说127.0.1.1是您正在使用的这台机器的 IPv4 地址,我想指出以下配置文件供您查看:(这目录/路径名可能会因您的安装而异)。您可以在 /etc/postgresql/8.4/main/ 中找到它们(在 Ubuntu 10.04 中可以在此处找到)
- pg_hba.conf (/var/lib/pgsql/data/pg_hba.conf)
- 注释掉其他参数并添加以下内容
- 本地全部全部信任
- 主机全部全部 127.0.0.1/32 信任
- 托管所有所有::1/128 信任
- 主机全部全部 127.0.1.1 255.255.255.255 信任
- 注释掉其他参数并添加以下内容
- postgresql.conf(/var/lib/pgsql/data/postgresql.conf)
- 确保以下参数与通配符值挂钩
- listen_address = '*'
- 确保以下参数未注释
- 端口 = 5432
- 确保以下参数与通配符值挂钩
一旦您的 PostgreSQL 服务启动并运行,您可能希望在将来修改/更改这些值。:-) 希望这会有所帮助。