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

Azure Data Factory连接Yellowbrick数据库报错问题求助

解决Azure Data Factory连接Yellowbrick数据库的问题

首先,Yellowbrick(YB)数据库兼容PostgreSQL协议,所以我们可以直接使用ADF中的PostgreSQL连接器来配置数据源。针对你遇到的两个连接错误,我整理了逐步排查和解决的方案:

一、先确认基础配置正确性

  • 端口号:Yellowbrick默认的PostgreSQL兼容端口是5432,请确认你在ADF中填写的端口是否正确(部分YB实例可能自定义端口,建议和YB管理员确认)。
  • 数据库名称:确保填写的是YB中实际存在的数据库名称,注意PostgreSQL默认区分大小写,需准确输入。
  • 认证方式:如果使用用户名密码认证,确认账号密码是否正确,避免特殊字符导致的转义问题(可先用简单密码测试排查)。

二、针对「使用域名时Socket closed」错误的排查

这个错误通常是网络连接中断或无法建立导致的,可能的原因及解决:

  1. DNS解析问题:ADF所在环境无法解析YB域名。你可以在本地机器或Azure VM上用nslookup <YB域名>或dig <YB域名>命令测试解析,看是否能正确返回对应IP。如果解析失败,需检查域名的DNS配置是否正确,或在Azure DNS服务中添加对应记录。
  2. 防火墙/安全组限制:
    • YB云端实例的防火墙是否允许ADF的出站IP访问?ADF的IP范围可在Azure门户的ADF资源页面查看(进入ADF -> 概述 -> 查看IP地址),需将这些IP添加到YB实例的防火墙允许列表。
    • 若使用VNet集成的ADF,还要确认VNet到YB所在网络的连通性,是否配置了正确的对等连接或VPN。
  3. 加密设置冲突:你提到YB设置为「No Encryption」,请在ADF的PostgreSQL连接器配置中,将SSL模式设置为Disable——如果ADF尝试用SSL连接但YB不支持,会直接导致连接中断。

三、针对「使用IP地址时Verify hostname and port number」错误的排查

这个提示通常和PostgreSQL的pg_hba.conf配置或SSL验证有关:

  1. pg_hba.conf配置:YB的pg_hba.conf文件是否允许来自ADF IP的连接?需添加对应规则,示例:
    host    <目标数据库名>    <用户名>    <ADF_IP范围>/32    scram-sha-256
    
    (具体认证方式根据你的YB配置调整,生产环境不建议用trust模式)
  2. SSL验证问题:即使YB关闭了加密,ADF可能仍会尝试验证主机名。直接用IP连接时,需在ADF连接器的「高级设置」中,添加sslmode=disable和target_session_attrs=any这两个连接参数,强制关闭SSL并跳过主机名验证。
  3. 端口可达性:用telnet <YB_IP> 5432或nc -zv <YB_IP> 5432命令测试ADF环境到YB IP+端口的连通性,若无法连通,说明网络层面有阻断,需回到防火墙/安全组配置排查。

四、额外验证步骤

  • 用本地PostgreSQL客户端(如pgAdmin)分别用域名和IP连接YB实例,若本地能连但ADF不能,大概率是ADF到YB的网络策略问题。
  • 确认YB实例状态是否正常,是否存在维护或连接数已满的情况(可在YB控制台查看连接状态)。

如果还有具体的错误日志细节,可以补充出来,方便进一步排查。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 14:32:56