2016-10-11 2 views
0

JDBC 단계를 통해 SoapUI에서 Cassandra DB에 연결하려고합니다. 그리고 cql을 사용하여 다른 쿼리를 만들고 싶습니다. 참고 : 비슷한 질문에 대한 답변은 여기에 있었지만 결과에는 도움이되지 않았습니다.SoapUI에서 Cassandra 3.0.3 (9042 사용)에 연결

사전 조건 : 카산드라 DB 9042

포트 10.xxx 같은 IP의 떨어지게와 서버 (카산드라 버전 3.0.3) 완료 : 나는 <soapui>../bin/ext에 항아리 다음 추가 :

- cassandra-all-3.9 
- cassandra-clientutil-3.9 
- cassandra-jdbc-1.2.5 
- cassandra-thrift-3.9 
- libthrift-0.9.3 
- slf4j-api-1.7.7 
- thrift-0.6.1 

SoapUI에서, 구성, I 구성 :

Driver : org.apache.cassandra.cql.jdbc.CassandraDriver 
Connection String : jdbc:cassandra://10.x.x.x:9042/profilename 

그러나이 연결을 테스트하려고 - 난 그냥

012,351를받을
java.sql.SQLNonTransientConnectionException: org.apache.thrift.transport.TTransportException: 
Read a negative frame size (-2080374784) 

질문 :이 문제를 해결하고 연결을 설정하고 DB에 쿼리하는 방법은 무엇입니까?

+0

'cassandra-all'에는 Cassandra 서버 자체가 포함되어 있다는 것을 알고 있습니까? – OrangeDog

+0

감사합니다, 재 개 항아리 목록입니다. – Dmitry

+0

현재하고있는 일에 대해 알고 계신 지요? 아니면 임의의 항아리를 임의로 추가하고 계십니까? – OrangeDog

답변

2

rpc (쓰리 프) 클라이언트를 기본 (CQL) 포트에 연결하려는 것 같습니다.

기본적으로 9042는 기본 포트 여야하고 9160은 rpc 포트 여야합니다. 변경되었을 수 있습니다 : 서버의 cassandra.yaml을보고 native_transport_port 및/또는 rpc_port에 대해 구성된 내용을 찾으십시오.

Cassandra 2.x 이후 thrift/rpc가 더 이상 사용되지 않으며 가능한 경우 CQL을 사용해야 함을 명심하십시오.

+0

감사합니다. 게다가, DataStax에서 확인 - 작동 확인 (쿼리 등); in DataStax connection in 9042 – Dmitry

+0

이 JDBC 드라이버가 절약 대신에 쓰리 프트를 사용하는 경우 포트 9160을 사용해야합니다. – OrangeDog

+0

yaml을 서버에 체크인했습니다. (아무 것도 변경하지 않아도되므로 정보 만 변경할 수 있습니다.) native_transport_port : 9042; rpc_port : 9160; ////// 초기 조언에 감사 드리며 연구를 계속합니다. – Dmitry

관련 문제