You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过SSH隧道连接MySQL遇getaddrinfo ENOTFOUND错误求助

解决VSCode数据库工具SSH隧道连接getaddrinfo ENOTFOUND错误的办法

1. 验证主机名解析与拼写

  • 确认VSCode数据库工具中填写的test-db01.somedomain.com和终端SSH使用的主机名完全一致,无空格、拼写错误(域名不区分大小写,但需避免笔误)。
  • 在终端执行nslookup test-db01.somedomain.com或ping test-db01.somedomain.com,检查本地机器能否正常解析该域名的IP。若解析失败,可直接用解析出的IP替代域名填入VSCode,或检查本地DNS配置。

2. 核对SSH隧道配置项

VSCode数据库工具(如MySQL扩展)的SSH隧道需确保以下配置准确:

  • SSH主机:填写test-db01.somedomain.com或其对应IP
  • SSH端口:默认22,若远程主机修改过SSH端口需同步填写
  • SSH用户名:终端SSH时使用的用户名(若远程用户名与本地不同,需明确填写为远程用户名@test-db01.somedomain.com)
  • SSH密钥路径:手动指定本地私钥的绝对路径,比如~/.ssh/id_rsa(mac/Linux)或C:\Users\你的用户名\.ssh\id_rsa(Windows),避免VSCode无法自动识别密钥位置
  • 密钥密码短语:输入终端SSH时使用的密码短语,确保无输入错误

3. 配置VSCode SSH Config文件

若直接填写主机名无效,可通过SSH配置文件简化连接:

  1. 打开VSCode,按Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac),输入Remote-SSH: Open SSH Configuration File,选择用户级配置文件
  2. 在文件中添加以下内容(替换占位符为实际信息):
Host test-db01
    HostName test-db01.somedomain.com
    User 你的远程用户名
    IdentityFile ~/.ssh/id_rsa
  1. 保存后,在VSCode数据库工具的SSH隧道配置中,SSH主机填写test-db01(即配置中定义的Host别名),再尝试连接

4. 排查防火墙与代理干扰

  • 暂时关闭本地防火墙,测试是否能正常连接,排除防火墙阻止VSCode发起SSH请求的可能
  • 若使用代理,检查VSCode的代理设置是否正确,可将test-db01.somedomain.com添加到代理例外列表

5. 更新软件与扩展

确保VSCode为最新版本,同时更新MySQL、Remote-SSH等相关扩展,旧版本的兼容性问题可能导致连接失败

内容的提问来源于stack exchange,提问作者Greg Peckory

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 09:42:38