将Apache Cassandra连接到DataGrip

tcomlyy6  于 8个月前  发布在  Cassandra
关注(0)|答案(2)|浏览(135)

在我为Cassandra提取映像并运行容器并创建数据库之后,我想在DataGrip上添加其数据源,以便从那里管理数据库。当我运行容器时,我让它也监听端口9842。通过键入命令:

  • docker pull cassandra
  • docker run -d cassandra-node -p 9842:9842
  • docker exec -it cassandra-node bash

主机是localhost,我尝试使用jdbc:cassandra://localhost:9842 URL访问数据库。
我尝试连接,但每次我得到的错误:
All host(s) tried for query failed (tried: localhost/127.0.0.1:9842 (com.datastax.driver.core.exceptions.TransportException: [localhost/127.0.0.1:9842] Channel has been closed)).

hts6caw3

hts6caw31#

如果你在localhost上运行你的容器,并且没有改变Cassandra的配置,Cassandra将在容器的9042端口启动。你应该把你的docker run命令改为
docker run -d cassandra-node -p 9842:9042
这将容器的端口9042绑定到主机上的端口9842。

bcs8qyzn

bcs8qyzn2#

您没有提供有关如何在DataGrip中配置Cassandra连接的大量信息,但您发布的错误表明:

  • 您的节点未在localhost上运行,或者
  • Cassandra未在端口9842上侦听客户端。

您需要连接到Cassandra正在监听CQL客户端的地址,即在rpc_address中配置的IP。此外,默认的CQL端口是9042
最后,您还需要确保DataGrip和节点之间存在网络连接。干杯!干杯!

相关问题