当前位置: 首页 > article >正文

Mongodb Error: queryTxt ETIMEOUT xxxx.wwwdz.mongodb.net

背景

每天都能遇到奇怪的问题,做个记录,以便有缘人能得到帮助!
换了一台电脑开发nextjs程序。需要连接mongodb数据,对数据进行增删改查。
上一台电脑好好的程序,新电脑死活连不上mongodb数据库。同一套代码,没任何修改,搞得我怀疑人生了,打开浏览器进入mongodb官网毫无问题,也能进入线上系统查看数据,网络应该是没问题。
于是我尝试了一下手机热点,这次代码能正常跑起来,连接数据库了!!!是不是很无语?
又换回家里的wifi,嘿,又连不上mongodb数据了!!!
详细报错信息:

Error: queryTxt ETIMEOUT xxx.wwwdz.mongodb.net
    at QueryReqWrap.onresolve [as oncomplete] (node:internal/dns/promises:291:17)
    at QueryReqWrap.callbackTrampoline (node:internal/async_hooks:130:17) {
  errno: undefined,
  code: 'ETIMEOUT',
  syscall: 'queryTxt',
  hostname: 'xxx.wwwdz.mongodb.net'
}

分析解决

于是我开始在网络上找有没有人遇到跟我一样的问题.
运气不错,在mongodb的官方论坛找了一个帖子,小哥遇到了跟我差不多的情况,同一套代码,某一天突然就连不上数据库了!----链接
大概看了一下说是DNS问题,于是我就按上面提示在命令行输入了两行命令

1. 检查srv有没有问题
nslookup -query=srv _mongodb._tcp.xxx.fti4a.mongodb.net
2. 检查txt有没有问题
nslookup -query=txt _mongodb._tcp.xxx.fti4a.mongodb.net

正产返回结果:

服务器:  one.one.one.one
Address:  1.1.1.1

mongodb.net
        primary name server = ns-761.awsdns-31.net
        responsible mail addr = awsdns-hostmaster.amazon.com
        serial  = 1
        refresh = 7200 (2 hours)
        retry   = 900 (15 mins)
        expire  = 1209600 (14 days)
        default TTL = 60 (1 min)

如果有问题,会显示 server: unknow, 连接失败之类(懒得复现了,反正一看就知道连接失败了)

从而定位问题就是DNS!!!
搜一下公开的DNS,有百度,阿里,腾讯大厂的DNS。
于是开始更换DNS:

1. win + R 输入 ncpa.cpl 回车,出现网络连接中心
2. 因为我的是wifi,所以点 WLAN => 属性 => 选中Internet 协议版本4(TCP/IP4)-> 点 属性
3. 使用下面的DNS服务地址:1.1.1.1,备用的我用的是114的,114.114.114.114

重启一下电脑,打开powershell,或者命令行,检查一下srv,txt是不是通的

nslookup -query=srv _mongodb._tcp.xxx.fti4a.mongodb.net
nslookup -query=txt _mongodb._tcp.xxx.fti4a.mongodb.net

两个命令都没问题,于是打开vscode,运行代码,正常连接数据库!!!没问题了。

总结

一天天的都遇到一些什么拉机问题。。。浪费时间啊。


http://www.kler.cn/a/304181.html

相关文章:

  • AI生活之我用AI处理Excel表格
  • SwiftUI开发教程系列 - 第1章:简介与环境配置
  • Flutter 小技巧之 Shader 实现酷炫的粒子动画
  • (十)Python字典基本操作
  • 解线性方程组(二)
  • Golang | Leetcode Golang题解之第546题移除盒子
  • 【运维】自动化运维工具,使用 Ansible 进行开发环境配置管理(本地/远程,brew/scoop/yum,docker/packer/openstack)
  • 【Hot100】LeetCode—75. 颜色分类
  • 算法基础-扩展欧几里得算法
  • Python知识点:如何使用Python进行Excel文件操作(OpenPyXL、Pandas)
  • 源码到class字节码的编译流程 字节码到内存的Java类加载流程
  • 【一分钟学C++】std::memory_order
  • Vue3+Django5+REST Framework开发电脑管理系统
  • 【计算机网络 - 基础问题】每日 3 题(一)
  • 程序的结构和控制流与数据流
  • MySQL 表的增删改查
  • 注解(Java程序的一种特殊“注释”,用于工具处理的标注)
  • 每日一问:C++ 中重写和重载的区别
  • vue3 5个常用的API
  • SpringBoot开发——整合Spring Data MongoDB
  • [数据集][目标检测]车油口挡板开关闭合检测数据集VOC+YOLO格式138张2类别
  • 凸优化学习(2)——梯度类方法求解(gradient descent)
  • 构建有温度的用户关系:开源 AI 智能名片、链动 2+1 模式与 S2B2C 商城小程序的作用
  • 华为SMU02B1管理模块WEB登录与账户密码信息
  • HTB-Archetype(winPEAS枚举工具,mssql xp_cmdshell)
  • Linux - make/Makefile工具的基础使用