2012-07-16 81 views
2

当我尝试的命令searchd,它表明:“searchd的” 正显示出 “FATAL:bind()的失败在0.0.0.0:地址已在使用”

using config file '/usr/local/etc/sphinx.conf'... 
WARNING: compat_sphinxql_magics=1 is deprecated; please update your application and config 
listening on all interfaces, port=9312 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
bind() failed on 0.0.0.0, retrying... 
FATAL: bind() failed on 0.0.0.0: Address already in use 

,当我netstat -nlp,已经有searchd在该端口。

  • 冲突?
  • 我该怎么办?
+0

你是'searchd'开发者吗? – 2012-07-16 17:02:21

回答

4

当我〜#netstat -nlp,那里已经有“searchd”在那个端口。

所以,如果你已经有searchd运行,你为什么要尝试启动另一个?

如果你确实想运行两个实例(为什么?),那么你应该安排他们在不同的端口 - 每个实例将需要一个单独的配置文件。

+0

雅,你说得对。但对我而言,我现在只是自己手动安装了“狮身人面像”。但有一个实例已经在运行。所以我越来越复杂。我应该删除该实例还是什么。 – 2012-07-16 14:47:08

+2

也许只是尝试“searchd --stop”来停止正在运行的实例。如果没有尝试“killall searchd”来杀死所有实例。然后尝试正常启动。这假设你只是瞄准一个实例,现有的实例只是一个错误。 – barryhunter 2012-07-16 15:25:16

0

可能你没有特权或直接访问地址0.0.0.0:9312或者它已被其他进程使用。

尝试将狮身人面像searchd配置listen选项更改为另一个地址或确保地址可用。

相关问题