在服务器配置中,我已禁用thrift(start_rpc: false
),因为可能是现在遗留的。服务器启动正常:
INFO 12:23:09,658 Starting listening for CQL clients on localhost/127.0.0.1:9042...
INFO 12:23:09,668 Not starting RPC server as requested. Use JMX (StorageService->startRPCServer()) or nodetool (enablethrift) to start it
如果我然后尝试启动CQL,我会收到此错误:
C:\Program Files\DataStax Community\apache-cassandra\bin> .\cqlsh.bat
Connection error: Could not connect to localhost:9160
港口9160是节俭港口。我假设CQL应该以原生格式运行。
如果我试图逼迫端口:
C:\Program Files\DataStax Community\apache-cassandra\bin> .\cqlsh.bat localhost 9042
我明白了:
Traceback (most recent call last):
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\..\apache-cassandra\bin\cqlsh", line 2092, in <module>
main(*read_options(sys.argv[1:], os.environ))
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\..\apache-cassandra\bin\cqlsh", line 2075, in main
single_statement=options.execute)
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\..\apache-cassandra\bin\cqlsh", line 490, in __init__
password=password, cql_version=cqlver, transport=transport)
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\cql-internal-only-1.4.1.zip\cql-1.4.1\cql\connection.py", line 143, in connect
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\cql-internal-only-1.4.1.zip\cql-1.4.1\cql\connection.py", line 59, in __init__
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\cql-internal-only-1.4.1.zip\cql-1.4.1\cql\thrifteries.py", line 159, in establish_connection
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\cql-internal-only-1.4.1.zip\cql-1.4.1\cql\cassandra\Cassandra.py", line 1265, in describe_version
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\cql-internal-only-1.4.1.zip\cql-1.4.1\cql\cassandra\Cassandra.py", line 1275, in recv_describe_version
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\thrift-python-internal-only-0.9.1.zip\thrift\protocol\TBinaryProtocol.py", line 126, in readMessageBegin
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\thrift-python-internal-only-0.9.1.zip\thrift\protocol\TBinaryProtocol.py", line 206, in readI32
File "C:\Program Files\DataStax Community\apache-cassandra\bin\..\lib\thrift-python-internal-only-0.9.1.zip\thrift\transport\TTransport.py", line 63, in readAll
EOFError
答案 0 :(得分:2)
Cassandra 2.0.x的cqlsh使用Thrift与服务器通信。