解决 Neo4j Desktop 中的端口冲突
有时在升级或重新安装后,Neo4j Desktop 可能会针对端口 7474、7687、7473 抛出重复的端口冲突异常,同时提供“修复配置”选项。但是,在某些情况下,选择此选项无法解决端口冲突。尝试使用播放按钮启动数据库会导致端口冲突通知,提示修复配置。单击“修复配置”没有任何变化,数据库无法启动。

可以使用bin\neo4j console
启动数据库,并且可以通过独立的 Chrome 浏览器访问,而启动 Neo4j 浏览器则会抛出错误,提示凭据无效,请使用:server connect。发出:server connect 会抛出错误,提示提供的凭据无法使用。

首先要检查的是操作系统防火墙和/或防病毒软件是否允许默认/配置的 http、https、bolt 端口。第二个检查是执行nc -l -p <port>
,这将检查本地端口可用性,以及端口是否已被其他应用程序/进程使用。其变体是nc -v <hostname> <port>
,其中 Neo4j 服务器位于远程实例上。对于 Windows,可以通过命令提示符使用内置的 telnet 工具,例如telnet hostname.domain.com 7687
。
在进行上述检查后,值得尝试备份位于 MacOSX 上的/Users/user/ /Library/Application Support/
或 Windows 上的%USERPROFILE%.Neo4jDesktop\ and %USERPROFILE%\AppData\Roaming\Neo4j Desktop\
的 .Neo4jDesktop 目录,然后删除这些目录,然后重新安装所需的 Neo4j Desktop 版本并重新启动操作系统。
如果端口冲突仍然存在,则故障排除的下一步是检查操作系统的hosts
文件是否存在潜在问题。Linux 和 Mac OS 上的 hosts 文件位于 (/etc/hosts)。Windows 也有 hosts 文件,在 Windows 上,可以在 \Windows\System32\drivers\etc\ 中找到它。快速检查操作系统是否能够正确解析主机名,可以在 cmd 中执行tracert localhost
,这应该会打印单个跳跃。hosts 文件中唯一的行是以下行,如果需要,我们可以注释掉、删除或修改此行或文件。示例输出为
$ traceroute localhost
traceroute to localhost (127.0.0.1), 64 hops max, 52 byte packets
1 localhost (127.0.0.1) 1.167 ms 0.112 ms 0.085 ms
如果跟踪路由返回空结果,请尝试注释掉 hosts 文件中与 localhost 相关的所有内容。然后,尝试再次运行命令tracert localhost
。之后,尝试在 Desktop 中启动图数据库以查看问题是否已解决。在 Desktop 中测试时,应注释掉 hosts 文件中的该行。
上述步骤经过测试,可以缓解遇到的端口冲突问题。
此页面是否有帮助?