postgres不知道在哪里可以找到服务器配置

时间:2015-09-17 11:48:14

标签: postgresql

我试图在我的新mac上运行PostgreSQL for RoR(我是新手)。我按照安装指南,但我无法正常工作。我发现了类似的问题,但那些没有帮助。我在'postgres'cmd上收到以下错误。

postgres does not know where to find the server configuration file.
You must specify the --config-file or -D invocation option or set the 
PGDATA environment variable.

然而,当我通过

设置我的-D调用时
postgres -D /usr/local/var/postgres

我收到了另一个错误

FATAL:  lock file "postmaster.pid" already exists
HINT:  Is another postmaster (PID 6621) running in data directory    
"/usr/local/var/postgres"?

我曾尝试使用'kill 6621'但是它似乎只是在另一个PID上启动另一个postmaster。我也试过删除PID并运行

postgres -D /usr/local/var/postgres

我收到以下错误:

LOG:  could not bind IPv6 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
LOG:  could not bind IPv4 socket: Address already in use
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

有谁知道我做错了什么?

3 个答案:

答案 0 :(得分:19)

通常,当安装postgres时,会在系统中创建服务/守护程序,因此无需手动启动服务器。您收到错误,因为该服务已在运行。

尝试使用psql

连接到数据库

答案 1 :(得分:3)

就我而言,我必须使用主机名创建一个新数据库

createdb hostname

我想其他任何名称都可能同样有效。

然后使用psql命令连接到我新创建的数据库。

psql mydbname

像魅力一样工作。

答案 2 :(得分:0)

这对我有用:

sudo -u postgres psql