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

使用Node.js连接Azure Database for MySQL时连接失败该如何解决

Azure Database for MySQL 连接失败排查步骤
  • 首先排查网络访问限制
    Azure默认拦截所有未授权的公网访问请求,你需要先登录Azure门户,进入对应的MySQL实例页面,打开「连接安全」设置,将运行Node.js代码设备的公网IP添加到入站白名单中,同时确认本地网络、运营商没有封禁3306端口的出站请求。
  • 修正连接参数配置
    • 用户名格式错误:Azure Database for MySQL的默认用户名格式为 <用户名>@<数据库实例名>,你当前仅填写admin不符合要求,需要补全后缀,例如admin@mysql-demo01
    • Host地址错误:Azure MySQL的公网访问地址为固定域名(格式为<实例名>.mysql.database.azure.com),直接填写IP地址会因为实例弹性IP变动导致连接失败,建议替换为官方提供的域名
    • 数据库名校验:确认你要连接的目标数据库确实命名为admin,测试阶段可以先删除配置中的database参数,先验证基础连通性再指定库名
  • 补充SSL连接配置
    Azure Database for MySQL默认强制开启SSL连接,你当前的配置没有添加SSL相关参数,需要在createConnection的配置项中添加ssl: { rejectUnauthorized: true },测试环境可临时设置为false跳过证书校验,生产环境建议使用Azure官方提供的根证书。
  • 替换适配的依赖包
    旧版mysqlnpm包对新版MySQL协议和Azure的SSL适配存在兼容性问题,建议替换为mysql2包:执行npm uninstall mysql && npm install mysql2,再重新运行代码测试。
  • 本地先做连通性验证
    先跳过Node.js代码,直接用本地MySQL命令行工具测试连接:mysql -h <你的Azure MySQL域名> -u <完整用户名> -p,如果命令行无法连接,说明问题出在网络、账号权限层面,和代码无关。

报错截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 21:06:04