我的ArangoDB中有一个糟糕的服务器端点。这会阻止系统启动。它将从--no-server
开始,但甚至无法连接arangosh。
如果只是从命令arangod --server.endpoint tcp://127.0.0.1:8529
给出端点,它如何限制端点,它仍然会尝试加载数据库中的所有端点并失败。
答案 0 :(得分:2)
启动arangod时,它将尝试绑定到命令行选项--server.endpoint
中指定的端点。如果未在启动命令中指定此选项,则该选项可能会出现在启动时使用的配置文件。
此外,服务器将尝试绑定到服务器数据库目录中名为ENDPOINTS
的文件中指定的所有端点。此文件是可选的。
如果多次指定任何端点(无论是通过命令行,配置文件还是ENDPOINTS
文件指定),则服务器将拒绝启动。这是因为它将尝试绑定到已绑定的端点。
当出于某种原因绑定到端点失败时,服务器的错误日志中应该有这样的一行:
2015-06-03T11:37:23Z [4165] FATAL failed to bind to endpoint 'tcp://127.0.0.1:8529'. Please check whether another instance is already running or review your endpoints configuration.
我只能猜测你的情况下实际的错误原因是什么,但是可能存在一个ENDPOINTS
文件,其中包含一个也在命令行或配置文件中指定的端点。在这种情况下,您应该看到上面的错误消息。在这种情况下,删除ENDPOINTS
文件将有所帮助。
顺便说一句,--no-server
故意禁用arangod中的HTTP服务器,因此您无法使用ArangoShell或其他任何东西连接到它。