任何人都告诉我应该使用哪个版本的cassandra来运行cqlsh-3.4.3,这样我就可以运行GROUP BY查询了。
目前我的环境是
[cqlsh 5.0.1 | Cassandra 3.9 | CQL spec 3.4.2 | Native protocol v4]
尝试bin / cqlsh时出错--cqlversion = 3.4.3
Connection error: ('Unable to connect to any servers', {'127.0.0.1': ProtocolError("cql_version '3.4.3' is not supported by remote (w/ native protocol). Supported versions: [u'3.4.2']",)})
请Suggest.Thanks。
使用cassandra 3.7尝试时出现相同的错误。答案 0 :(得分:6)
您可以尝试使用option
强制cqlsh使用特定的cql版本- cqlversion = “#。##”
example:cqlsh 127.0.0.1 9042 --cqlversion =“3.2.0”(在您的情况下:3.4.2)
我的例子:
me@XXX:~$ cqlsh <cassandra_ip>
Connection error: ('Unable to connect to any servers', {<cassandra_ip>: ProtocolError("cql_version '3.4.2' is not supported by remote (w/ native protocol). Supported versions: [u'3.3.1']",)})
me@XXX:~$ cqlsh <cassandra_ip> --cqlversion="3.3.1"
Connected to UAT Analytics Cluster at <cassandra_ip>:9042.
[cqlsh 5.0.1 | Cassandra 2.2.8 | CQL spec 3.3.1 | Native protocol v4]
Use HELP for help.
cqlsh>
<强>更新强>
(1)CQL 3.4.3和Cassandra 3.10将支持group by
。
(2)特定版本的Cassandra为not recommended to upgrade CQL spec。或者,无法为一个Cassandra版本(here)升级CQL规范版本。
(3)为了使用group by
,你应该将cassandra升级到3.10,或者用户定义的函数,或者改变你的表格设计......