Cassandra cqlsh无法连接到任何服务器 - 127.0.0.1:9160(已关闭)>已关闭

Pet*_*etz 19 cassandra cqlsh

我在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)

  • 我也遇到了这个问题而且刚刚知道它实际上是我创建并配置为使用旧端口9160的〜/ .cassandra目录中的cqlshrc文件. (2认同)

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 查询模式。

  • 我收到此错误`连接错误:('无法连接到任何服务器',{'127.0.0.1':错误(61,“尝试连接到[('127.0.0.1',9042)]。最后一个错误:连接被拒绝")})` (8认同)

hem*_*mar 6

Cassandra-2.1使用9042作为cqlsh port.Connect就是这个默认端口.如果你想连接9160端口然后通过设置环境变量CQLSH_PORT和CQLSH_HOST来改变它,但是为了设置这个你必须将rpc_port从默认的9160更改为任何其他港口.


Cha*_*tra 5

我通过编辑以下文件在 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)

我希望它会帮助某人。

谢谢,

昌丹