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

求助:Microsoft SQL Server数据库无法被ODD平台检测到

排查与解决方案

1. 补全采集器配置文件中的SQL Server数据源配置

你仅完成了令牌的复制,但未添加SQL Server的连接配置,这是核心遗漏步骤。需要在collector_config.yaml的sources节点下添加SQL Server的连接信息,示例配置如下:

sources:
  - name: sql_server_bikestores
    type: sqlserver
    connection:
      server: "host.docker.internal" # 容器内访问宿主机SQL Server需用此地址,不可用localhost
      port: 1433
      database: "BikeStores"
      username: "sa"
      password: "my_password"
      driver: "ODBC Driver 17 for SQL Server"

2. 验证容器与SQL Server的网络连通性

  • 检查SQL Server是否启用了TCP/IP协议(可在SQL Server配置管理器中确认)
  • 测试采集器容器能否访问SQL Server地址:
    docker exec -it odd-collector ping host.docker.internal
    # 或直接测试端口连通性
    docker exec -it odd-collector telnet host.docker.internal 1433
    
  • 确保宿主机防火墙未阻止1433端口的入站请求

3. 查看采集器日志定位具体错误

采集器日志会明确显示连接失败的原因(如认证错误、驱动缺失、超时等),执行以下命令查看日志:

docker logs odd-collector

4. 确认采集器容器内已安装ODBC驱动

ODD采集器默认容器可能未预装SQL Server ODBC驱动,进入容器验证驱动是否存在:

docker exec -it odd-collector bash
odbcinst -q -d

若未找到ODBC Driver 17 for SQL Server,需修改docker/demo.yaml中采集器的配置,添加驱动安装步骤,或使用预安装驱动的自定义镜像。

5. 检查数据库用户权限

确保sa用户拥有BikeStores数据库的元数据读取权限,包括访问INFORMATION_SCHEMA视图和系统表的权限。

6. 确认ODD平台采集器状态

在ODD管理界面的Collectors页面,检查采集器状态是否为Active,并确认已正确关联到目标数据源配置。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 19:53:11