我在启动postgres服务器方面没有运气。我可以从终端向postgres添加新的数据库,表格等,但不能通过网页向表格添加内容。该网页目前正在本地主机上运行。
postgres数据文件夹最初是在root用户中创建的,但是我把它移到了我自己的用户帐户,它解决了很多问题,但我还是回到了{{1 (数据是数据集群文件夹)
postgres -D data
我尝试了两个不同的命令来启动服务器。
EDT LOG: could not bind IPv4 socket: Address already in use
2015-06-18 11:11:35 EDT HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
2015-06-18 11:11:35 EDT LOG: could not bind IPv6 socket: Address already in use
2015-06-18 11:11:35 EDT HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
2015-06-18 11:11:35 EDT WARNING: could not create listen socket for "*"
2015-06-18 11:11:35 EDT FATAL: could not create any TCP/IP sockets
给了我这个,但它不正确
pg_ctl -D data -l logfile start
和
server starting
给了我这个
pg_ctl -D /Library/PostgreSQL/9.4/data -l log file start
postgresql.auto.conf文件绝对是正确的名称和所有内容。如果我试图停止所谓的启动服务器,那么我会尝试使用第一个命令中的第一个命令,第二个命令使用第二个命令。
LOG: skipping missing configuration file "/Library/PostgreSQL/9.4/data/postgresql.auto.conf"
pg_ctl: another server might be running; trying to start server anyway
server starting
和
Is server running?
答案 0 :(得分:1)
似乎某些东西已经使用了端口5432
。
尝试找出哪个程序(可能是postgres的另一个实例)阻止该端口并决定是否停止该其他进程。
作为替代方案,重新配置postgres以使用其他端口。
也许你可以通过在控制台中键入来阻止该端口阻塞:
lsof -n -i4TCP:5432 | grep LISTEN
答案 1 :(得分:0)
很明显,还有另一个postgres运行的例子。您必须在手动启动之前停止该操作,因为这将与端口号冲突。
sudo launchctl stop com.edb.launchd.postgresql-9.4
使用您的命令尝试并启动。