Apache Cassandra 3.7 CQLSH'无法连接到任何服务器'

时间:2016-08-10 20:59:59

标签: cassandra cqlsh

Apache cassandra 3.7版在Ubuntu服务器上运行16.04很好,apache cassandra的所有部分启动都没问题,问题是,我去使用cqlsh进行连接: $ CQLSH(我的IP地址)9160 然后它说: 连接错误:('无法连接到任何服务器', {'10 .0.0.13':TypeError('ref()不接受关键字参数',)} ) 我看到它有一个错误: https://issues.apache.org/jira/browse/CASSANDRA-11850 但它的版本为cqlsh --version:cqlsh 5.0.1 cassandra -v:3.5(也发生在3.0.6)

有人评论我的Apache Cassandra门票: https://issues.apache.org/jira/browse/CASSANDRA-12402 说明: 使用故障单中描述的解决方法: 如果安装了最新的cassandra驱动程序,则可以通过将环境变量CQLSH_NO_BUNDLED设置为任何非空字符串来禁用嵌入式驱动程序,例如export CQLSH_NO_BUNDLED = true。

问题是:

如何禁用最新的cassandra驱动程序?它在哪个目录?什么文件名?如果我禁用它,我将能够使用CQLSH连接?你们用什么工具连接到apache cassandra来运行命令等。除了CQLSH直接在服务器上?

2 个答案:

答案 0 :(得分:31)

如故障单中所述 - 定义环境变量CQLSH_NO_BUNDLED并将其导出。

export CQLSH_NO_BUNDLED=true

它将告诉 cqlsh (这是Python程序)使用外部Cassandra Python驱动程序,而不是与发行版捆绑在一起的驱动程序。捆绑的Cassandra驱动程序位于 /opt/datastax-ddc-3.7.0/bin 中,文件名为 cassandra-driver-internal-only-3.0.0-6af642d.zip < / em>的

然后运行 cqlsh ,它位于 /opt/datastax-ddc-3.7.0/bin 中。

./cqlsh

您可能需要使用以下命令安装Cassandra Python(如果尚未安装):

pip install cassandra-driver 

注意 - 文件夹名称适用于Datastax Cassandra build。

答案 1 :(得分:0)

这可能是由于python版本。 这是标记为已解决的故障单。 cqlsh connection error: 'ref() does not take keyword arguments'

我试着站在我身边。在将python恢复到2.7.10之后,它运行良好。