2012-04-24 94 views
2

我在postgresql网站上获得了postgresql-8.4.9.tar.bz2软件包,并按照文件INSTALL上的说明进行安装。但是,当我们尝试运行它,它不工作,并抛出这个错误:如何在有mysql的机器上安装(并运行)postgresql?

/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data 
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 

我不知道,也许是因为MySQL的一些冲突。有人知道发生了什么事吗?

在此先感谢!

+1

MySQL和PostgreSQL可以运行在同一台服务器上就好了一起。这听起来像你已经有一个Postgres运行的实例。试试'ps ax | grep postmaster“或类似文件来确定服务器守护进程是否已经在运行。 – 2012-04-24 16:57:31

+0

它确实在运行!杀死它几乎解决了所有问题。谢谢! – 2012-04-24 17:38:02

回答

6

看来,另一个进程正在侦听端口5432尝试运行以下命令:

sudo netstat -tulpn | grep 5432 
+0

是啊!这基本上是问题所在。只需要杀死进程并更改postgres目录的权限以及正在运行的东西。非常感谢你! – 2012-04-24 17:37:04

+0

@Jayme你是如何杀死netstat命令中找到的进程的? – guptron 2014-09-09 13:56:44

+0

@dotsConnect我想我使用了这个命令:kill -9'ps aux | grep -i'postgres'| awk'{print $ 2}''或类似的东西。 netstat给出你需要的进程ID。例如: tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1201/postgres kill -9 1201也解决了它。 ;) – 2014-09-09 14:36:19

相关问题