我在OSX上安装了Cassandra.尝试从/ bin /运行cqlsh时,出现以下错误:
> Connection error: ('Unable to connect to any servers', {'127.0.0.1':
> ConnectionShutdown('Connection <AsyncoreConnection(4522252560)
> 127.0.0.1:9160 (closed)> is already closed',)})
Run Code Online (Sandbox Code Playgroud)
我在安装Cassandra时遇到了困难,并且使用了brew install cassandra,从datastax安装了DSE,并从Apache下载了二进制文件.
Pet*_*etz 33
我认为问题是先前安装未正确卸载的结果.我的用户.cassandra
目录有一些默认配置,必须是针对不同的版本,并阻止cqlsh启动.
rm -Rf ~/.cassandra
Run Code Online (Sandbox Code Playgroud)
之后,我可以正确运行cqlsh.
$ bin/cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 2.1.2 | CQL spec 3.2.0 | Native protocol v3]
Use HELP for help.
cqlsh>
Run Code Online (Sandbox Code Playgroud)
Eri*_*oia 10
跑步cassandra
帮助我解决问题:
> cassandra
Cassandra 3.0 and later require Java 8u40 or later.
Run Code Online (Sandbox Code Playgroud)
和:
> java -version
java version "1.7.0_95"
OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-3)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
Run Code Online (Sandbox Code Playgroud)
安装Java 8后,它工作正常.
小智 7
好吧,我遇到了同样的问题,这就是我在 Mac 上所做的。
$cd /usr/local/Cellar/cassandra/3.10_1/bin/
Run Code Online (Sandbox Code Playgroud)
或者你的 cassandra 安装在哪里。
$cassandra
Run Code Online (Sandbox Code Playgroud)
这将初始化本地系统中的所有配置以启动 cassandra。
$./cqlsh
Run Code Online (Sandbox Code Playgroud)
这让您可以进入 cql 查询模式。
Cassandra-2.1使用9042作为cqlsh port.Connect就是这个默认端口.如果你想连接9160端口然后通过设置环境变量CQLSH_PORT和CQLSH_HOST来改变它,但是为了设置这个你必须将rpc_port从默认的9160更改为任何其他港口.
我通过编辑以下文件在 DSE-5.0 中解决了这个问题:
vi ~/.cassandra/cqlshrc
Run Code Online (Sandbox Code Playgroud)
并将下面的配置编辑为我正在运行的机器的当前 IP 地址 (192.168.1.6)。就我而言,它是我的 MacBook。
[connection]
hostname = 192.168.1.6
port = 9042
; factory = cqlshlib.kerberos_ssl.kerberos_ssl_transport_factory
; [kerberos]
; hostname = 192.168.1.6
; service = cassandra
; optional
; principal = bill/cassandra-admin@foo.example.com
Run Code Online (Sandbox Code Playgroud)
我希望它会帮助某人。
谢谢,
昌丹
归档时间: |
|
查看次数: |
69238 次 |
最近记录: |