我试图在我的新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
有谁知道我做错了什么?
答案 0 :(得分:19)
通常,当安装postgres时,会在系统中创建服务/守护程序,因此无需手动启动服务器。您收到错误,因为该服务已在运行。
尝试使用psql
答案 1 :(得分:3)
就我而言,我必须使用主机名创建一个新数据库
createdb hostname
我想其他任何名称都可能同样有效。
然后使用psql
命令连接到我新创建的数据库。
psql mydbname
像魅力一样工作。
答案 2 :(得分:0)
这对我有用:
sudo -u postgres psql