VoltDB上的错误:HTTP服务无法绑定到端口8080.正在退出
我使用的是mac。我安装了VoltDB并编译了CREATE语句,但错误“HTTP服务无法绑定到端口8080.退出”。已经发生了。 我的安装流程如下:VoltDB上的错误:HTTP服务无法绑定到端口8080.正在退出
brew install voltdb
vim users.sql
-> CREATE TABLE users (
user_id INTEGER UNIQUE NOT NULL,
user_name VARCHAR(40) NOT NULL,
created_at TIMESTAMP NOT NULL
);
voltdb compile -o users.jar users.sql
voltdb create users.jar
然后发生上述错误。
Initializing VoltDB...
_ __ ____ ____ ____
| |//___// /_/ __ \/ __)
| |// __ \//__////__ |
| |///_/// /_/ /_///_//
|___/\____/_/\__/_____/_____/
--------------------------------
Build: 6.9 This is not from a known repository Community Edition
Connecting to VoltDB cluster as the leader...
Host id of this node is: 0
FATAL: HTTP service unable to bind to port 8080. Exiting.
java.lang.Exception: java.net.BindException: Address already in use
我检查我的本地主机:8080,以下页面显示了(我的PHP版本很老了,所以请不要在意)
我还检查使用的端口状态,那么结果如下:
sudo lsof -P -i:8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd ***** root ** IPv6 ***************** 0t0 TCP *:8080 (LISTEN)
httpd ***** daemon ** IPv6 ***************** 0t0 TCP *:8080 (LISTEN)
httpd ***** daemon ** IPv6 ***************** 0t0 TCP *:8080 (LISTEN)
httpd ***** daemon ** IPv6 ***************** 0t0 TCP *:8080 (LISTEN)
然后我杀了所有上面的进程,并且“sudo lsof -P -i:8080”的结果变空了。我再次尝试执行“voltdb create users.jar”,但同样的错误已经发生,并且端口状态的结果不为空(与上述状态相同)。 如何在我的Mac上使用voltdb?
您遇到的直接问题似乎是您的EnterpriseDB在端口8080上侦听,因此VoltDB无法绑定到端口。这里列出了VoltDB使用的端口以及如何覆盖它们的说明:https://docs.voltdb.com/AdminGuide/HostConfigPortOpts.php
VoltDB不支持自制安装。不过,看到像这样的事情出现,真是太好了。但是,如果您继续遇到问题,我建议您从voltdb.com下载VoltDB,或者按照Github wiki instructions从源代码构建VoltDB。
最后,看来您使用的是过时的命令。当v5.0发布时,不推荐使用“voltdb compile”命令,而采用交互式DDL。 v6.8中不推荐使用“voltdb create”命令和相关的“join”,“recover”和“add”命令。并用很多simpler set of commands“voltdb init”和“voltdb start”代替。我建议您阅读Welcome to VoltDB tutorial,其中介绍了使用所有最新命令的基础知识。