ZBLOG

GOROOT=C:\Program Files\Go #gosetup GOPATH=C:\Users\tao1.liu\go #gosetup GOPROXY=https://goproxy.cn,direct #gosetup "C:\Program Files\Go\bin\go.exe" build -o C:\Users\tao1.liu\AppData\Local\JetBrains\GoLand2025.2\tmp\GoLand\___1go_build_main_go__2...

从错误信息来看,你的 EdgeX-UI-Go 服务在启动时遇到了数据库连接问题。具体错误是:

dial tcp: lookup edgex-db: no such host

这表明程序无法解析主机名 edgex-db,导致连接 MySQL 数据库失败。以下是解决方案:

1. 检查数据库配置

查看 D:\develop\station\edgex-ui-go\res\configuration.toml 文件中的数据库配置部分,确认:

[Database]
Host = "edgex-db"   # 检查这里的主机名是否正确
Port = "3306"
Username = "your_username"
Password = "your_password"
Name = "your_dbname"

2. 修改主机名指向

根据你的环境选择以下方案之一:

方案A:使用本地数据库(推荐开发环境)

将配置中的 Host 改为本地地址:

Host = "127.0.0.1" 

方案B:使用 Docker/DNS

如果是 Docker 环境:

  1. 确保 edgex-db 容器正在运行 (docker ps)
  2. 确保服务在同一个 Docker network 中

方案C:手动添加 hosts(临时方案)

编辑系统的 hosts 文件(C:\Windows\System32\drivers\etc\hosts):

127.0.0.1 edgex-db

3. GoLand调试建议

  1. 环境变量检查:确认 GoLand的运行/调试配置中没有覆盖数据库相关环境变量。
  2. 网络权限:如果使用 Windows防火墙,请允许 GoLand和 dlv.exe的网络访问。

4. MySQL服务验证

用其他工具(如MySQL Workbench)测试是否能连接到目标数据库。

需要进一步帮助可以提供:

  1. configuration.toml的数据库配置部分(隐藏敏感信息)
  2. 你使用的运行环境(纯本地/Docker/K8s等)

⚠️注意:错误日志显示的是2025年的时间,可能是系统时间设置有问题,建议也检查下实际时间是否准确。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=24050

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?