iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > GO >从 golang 连接到 rethinkDB 时出错
  • 478
分享到

从 golang 连接到 rethinkDB 时出错

2024-02-12 10:02:33 478人浏览 独家记忆
摘要

PHP小编百草在使用golang连接到rethinkDB时遇到了问题。无法连接到rethinkDB服务器的错误提示让他困惑不已。针对这个问题,他进行了一系列的排查和调试,并最终找到了解

PHP小编百草在使用golang连接到rethinkDB时遇到了问题。无法连接到rethinkDB服务器的错误提示让他困惑不已。针对这个问题,他进行了一系列的排查和调试,并最终找到了解决方案。在这篇文章中,我们将一起探讨从Golang连接到rethinkDB时可能出现的问题以及解决方法。

问题内容

我使用 rethinkdb 运行 Docker 容器,然后运行 ​​go file 以连接到数据库,但连接时出现错误。

大家好。我需要 rethinkdb 方面的帮助,我运行了 docker 容器:

docker run --name rth -p 8100:8080 -d rethinkdb

然后访问Http://localhost:8100并且有rethinkdb的主页,所以everythink都很好。但是当我尝试从 golang 连接到数据库时,我遇到了一些错误:

package main

import (  
    r "gopkg.in/rethinkdb/rethinkdb-go.v6"
    "log"
    "fmt"
)

func main() {
    _, err := r.connect(r.connectopts{
        address: "localhost:28015",
        database: "test",
    })
    if err != nil {
        fmt.println(err)
        log.fatal("could not connect")
    }
}

运行 go run main.go 后出现此错误:

rethinkdb: dial tcp 127.0.0.1:28015: connect: connection refused
2023/05/18 01:38:39 could not connect
exit status 1

感谢发生这种情况的原因是端口不正确(28015),但是如果我更改它,除了端口 = 8100 之外,我还会遇到同样的问题。如果我输入 8100 而不是 28015 并出现此错误:

rethinkdb: Unexpected EOF: HTTP/ 400 Bad Request

2023/05/18 01:38:52 Could not connect
exit status 1

可能有人知道如何解决这个问题)

解决方法

-p 8100:8080 将容器中的端口 8080 映射到主机上的端口 8100 。您没有映射任何其他端口,因此,当您尝试访问 8100 以外的任何端口(例如 127.0.0.1:28015)时,您的请求将无法到达容器。主机上的其他东西可能正在侦听该端口,或者可能没有任何侦听。

您提到您可以访问 上的管理界面http://localhost:8100;如果您检查日志,您会注意到类似以下内容:

listening for administrative http connections on port 8080
listening for client driver connections on port 28015

因此服务器正在侦听多个端口上的连接。端口 8080 (映射到 8100)是管理 http 接口,28015 用于驱动程序连接(这在 文档)。您的代码正在尝试连接到端口 28015 (这是正确的),但您没有映射该端口,因此在主机上无法访问它;解决这个问题:

docker run --name rth -p 8100:8080 -p 28015:28015 -d rethinkdb

这会将容器中的端口 28015 映射到主机上的端口 28015 (如果需要,您可以使用不同的主机端口;只需记住更新代码)。我们现在可以成功连接如下内容:

package main

import (
    "fmt"
    "log"

    r "gopkg.in/rethinkdb/rethinkdb-go.v6"
)

func main() {
    _, err := r.Connect(r.ConnectOpts{
        Address:  "localhost:28015",
        Database: "test",
    })
    if err != nil {
        fmt.Println(err)
        log.Fatal("Could not connect")
    }
    fmt.Println("Connected")
}

以上就是从 golang 连接到 rethinkDB 时出错的详细内容,更多请关注编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: 从 golang 连接到 rethinkDB 时出错

本文链接: https://www.lsjlt.com/news/563748.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 从 golang 连接到 rethinkDB 时出错
    php小编百草在使用golang连接到rethinkDB时遇到了问题。无法连接到rethinkDB服务器的错误提示让他困惑不已。针对这个问题,他进行了一系列的排查和调试,并最终找到了解...
    99+
    2024-02-12
  • 从 golang 通过代理连接到 ftp
    php小编子墨为您介绍一种方法,可以通过使用代理连接到FTP服务器的Golang代码。在某些情况下,我们可能需要在访问FTP服务器时使用代理服务器,以便提高安全性或解决网络限制问题。G...
    99+
    2024-02-09
  • Win10虚拟机尝试连接到服务器时出错怎么办?尝试连接到服务器xxx时出错的解决方法
    不少用户在使用Windows10系统的虚拟机服务Hyper-v功能时,运行Hyper虚拟提示“虚拟机尝试连接到服务器‘XXX’时出错,请检查虚拟管理服务是否正在运行以及是不授权你连接到...
    99+
    2023-05-21
    Win10 虚拟机 服务器
  • PHP连接PostgreSQL数据库时出现错误
    标题:PHP连接PostgreSQL数据库时出现错误,具体代码示例解析 在进行Web开发过程中,常常需要与数据库进行交互操作,而其中连接数据库是至关重要的一步。在使用PHP语言连接Po...
    99+
    2024-02-27
    错误 php
  • MySQL连接时出现2003错误的实现
    目录前言1.报错截图2.解决办法总结前言 第一次用mysql,打开mysql的图形化界面要连接时,出现2003错误。究其原因,可能是mysql的服务没有启动。本文章主要围绕这个解决办...
    99+
    2024-04-02
  • navicat连接时出现2003错误怎么办
    小编给大家分享一下navicat连接时出现2003错误怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!navicat连接时出...
    99+
    2024-04-02
  • 尝试发出回显请求时出现无效连接错误
    珍惜时间,勤奋学习!今天给大家带来《尝试发出回显请求时出现无效连接错误》,正文内容主要涉及到等等,如果你正在学习Golang,或者是对Golang有疑问,欢迎大家关注我!后面我会持续更新相关内容的,...
    99+
    2024-04-05
  • sqlyog连接Mysql时出现1251错误怎么解决
    本篇内容主要讲解“sqlyog连接Mysql时出现1251错误怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sqlyog连接Mysql时出现1251错误...
    99+
    2024-04-02
  • phpmyadmin配制连接mysql时出现错误怎么办
    本篇文章给大家分享的是有关phpmyadmin配制连接mysql时出现错误怎么办,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 ...
    99+
    2024-04-02
  • 连接sqlserver出现08001错误
    错误代码08001表示无法建立与SQL Server的连接。这可能是由以下一些常见原因引起的:1. SQL Server未运行:请确...
    99+
    2023-09-15
    sqlserver
  • 在本地端口33061上打开到slave1:33061的连接时出错该怎么办
    在本地端口33061上打开到slave1:33061的连接时出错该怎么办,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。单主模式,主启动star...
    99+
    2024-04-02
  • PDO连接出错怎么办
    小编给大家分享一下PDO连接出错怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!  1.确认PDO开启    PDO的开启必须...
    99+
    2023-06-06
  • wordpress建立数据库连接时出错如何解决
    在WordPress建立数据库连接时出现问题可能有多种原因。以下是一些常见的解决方法:1. 检查数据库凭据:确保在wp-config...
    99+
    2023-10-10
    WordPress 数据库
  • SQLyog连接MySQL时出现的2058错误解决方法
    出现的原因 使用sqlyog连接数据库过程中出现2058错误,出现的原因是因为MYSQL8.0对密码的加密方式进行了改变,所以我们只需要改变密码的加密方式便可以解决此类报错。 解决的方法 进入mysql使用命令: mysql -u '你的用...
    99+
    2023-10-27
    mysql 数据库
  • 远程连接mysql时出现1130错误如何解决
    远程连接mysql时出现1130错误解决方法:1.启动mysql;2.登录mysql数据库;3.进入数据表;4.执行命令查看host值;5.修改host值;6.更新数据库,重新连接即可;具体步骤如下:首先,在本地环境中启动mysql服务;s...
    99+
    2024-04-02
  • 在 Golang 中比较时出现错误
    在Golang中进行比较操作时,有时会遇到一些错误。这些错误可能导致程序运行不正常或产生意想不到的结果。本文将通过php小编草莓的介绍,为大家解析在Golang中比较时可能出现的错误,...
    99+
    2024-02-12
  • jdbc连接sql时间太长出现错误怎么解决
    当JDBC连接SQL服务器的时间过长或出现错误时,可以尝试以下解决方法: 检查网络连接:确保服务器和客户端之间的网络连接稳定,并...
    99+
    2023-10-24
    jdbc sql
  • [WARNING]: 连接到反向WebSocket Universal服务器 ws://127.0.0.1:8080/cqhttp/ws/ 时出现错误: websocket: bad handsh
    文章目录 版本错误Nonebot2未安装适配器 这种问题一般有两种情况 版本错误 这个问题暂时较为常见,因为nonebot2发布新版本(beta1)后,ws地址发生了改变,具体如下: 报错:[WARNING]: 连接到反向We...
    99+
    2023-08-19
    websocket 服务器 网络协议
  • mysql与navicat建立连接时出现1251报错如何解决
    本篇文章为大家展示了mysql与navicat建立连接时出现1251报错如何解决,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在网上查的是,出现这个原因是mysql...
    99+
    2024-04-02
  • Navicat连接MySQL时出现的连接失败问题及解决
    目录一、安装mysql的注意事项二、Navicat连接mysql方法一方法二总结一、安装MySQL的注意事项 官网下载安装,选择zip包,解压后不用安装只用配置好环境变量Path并在解压后的文件夹里新建文本文档my.in...
    99+
    2023-05-12
    Navicat连接MySQL Navicat连接MySQL连接失败 Navicat连接MySQL失败
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作