web-dev-qa-db-ja.com

Apache Cassandra 3.7 CQLSH 'サーバーに接続できません'

Apache cassandraバージョン3.7はUbuntuサーバー16.04で正常に実行されています。Apacheのすべての部分cassandraは問題なく起動しました。問題は、cqlshを使用して接続することです。 :$ CQLSH(私のIPアドレス)9160と表示されます:接続エラー:( 'サーバーに接続できません'、{'10 .0.0.13 ':TypeError(' ref()does not take keyword arguments '、)})iバグがあることがわかりました: https://issues.Apache.org/jira/browse/CASSANDRA-1185 しかし、バージョンcqlsh --version:cqlsh 5.0.1 cassandra -v:3.5(3.0.6でも発生)

誰かが私のApacheにコメントしましたCassandraチケット: https://issues.Apache.org/jira/browse/CASSANDRA-12402 説明:チケットに記載されている回避策を使用します:最新のcassandra-driverがインストールされている場合は、環境変数CQLSH_NO_BUNDLEDを空でない文字列に設定することにより、埋め込みドライバーを無効にできます(例:export CQLSH_NO_BUNDLED = true)。

質問は次のとおりです。

最新のcassandra-driverを無効にするにはどうすればよいですか?それはどのディレクトリにありますか?ファイル名は?また、無効にした場合、CQLSHを使用して接続できますか? Apacheに接続するためにどのツールを使用しましたかcassandraコマンドを実行するためなど。サーバーで直接CQLSHを使用しますか?

14
SteveB

チケットで説明されているように、環境変数CQLSH_NO_BUNDLEDを定義してエクスポートします。

export CQLSH_NO_BUNDLED=true

cqlsh(Pythonプログラム)に外部を使用するように指示しますCassandra Python driver 、ディストリビューションにバンドルされているものではありません。バンドルされているCassandraドライバは/ opt/datastax-ddc-3.7.0/binにあります。ファイル名は- cassandra-driver-internal-only-3.0.0-6af642d.Zip

次に、/ opt/datastax-ddc-3.7.0/binにあるcqlshを実行します。

./cqlsh

以下を使用してCassandra Python(まだインストールされていない場合))をインストールする必要がある可能性があります:

pip install cassandra-driver 

注-フォルダー名はDatastax Cassandraビルド用です。

31
user1876190

おそらくpythonバージョンです。これは解決済みとしてマークされたチケットです。 cqlsh接続エラー: 'ref()はキーワード引数を取らない'

試してみました。 python=を2.7.10に戻した後、うまく機能します。

0
Wenrui Meng