【发布时间】:2021-01-16 00:27:18
【问题描述】:
代码是用 Go 和 Cassandra 编写的,当我构建它时,它在我的本地计算机上运行良好。 但是当我将它上传到服务器(Ubuntu 20)时,它会抛出这个错误
gocql:无法拨号控制 conn 127.0.0.1:gocql:在流 0 上收到意外帧:[标头版本=[版本=4 方向=RESP] 标志=0x0 流=0 op=SUPPORTED 长度=96] 恐慌:gocql:无法创建会话:控制:无法连接到初始主机:gocql:在流 0 上收到意外帧:[header version=[version=4 direction=RESP] flags=0x0 stream=0 op=SUPPORTED length= 96] 这是代码
var err error
cluster := gocql.NewCluster("127.0.0.1")
cluster.Keyspace = "rentminer"
cluster.ConnectTimeout = time.Second * 1000
cluster.Consistency = gocql.One
Db, err = cluster.CreateSession()
if err != nil {
panic(err)
}
谁有办法???
【问题讨论】:
-
你能提供你的连接代码吗?
-
我已经编辑了代码
-
不确定这是否仍然需要,但在我的连接设置中我也有这行:
cluster.ProtoVersion = 4 // needed to talk to cassandra 3.x -
除此之外,我假设您正在与正确的地址(“ip:port”)通信,并且没有在生产集群上启用授权。否则你需要这样做:`cluster.Authenticator = gocql.PasswordAuthenticator{用户名:def.user,密码:def.pass,}`
-
我已经尝试了这些解决方案,但它不起作用