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

Azure AKS安装ThingsBoard失败:PSQLException连接尝试失败

问题解决方案

1. 修正JDBC URL格式错误

你的SPRING_DATASOURCE_URL参数存在格式问题:多参数分隔符使用错误,密码参数后应该用&而非?。正确配置如下:

SPRING_DATASOURCE_URL: jdbc:postgresql://my-app-postgresql.postgres.database.azure.com:5432/myapp?user=myappusername&password=mypass&sslmode=require

错误的分隔符会导致sslmode参数无法被解析,直接影响数据库连接逻辑。

2. 检查Azure PostgreSQL网络访问控制

  • 登录Azure门户,进入目标PostgreSQL服务器的连接安全性页面
  • 开启允许访问Azure服务选项,确保Azure虚拟机所属的VNet能访问数据库实例
  • 在防火墙规则中添加Azure虚拟机的公网IP,避免IP被拦截导致连接超时

3. 验证虚拟机到数据库的网络连通性

在Azure虚拟机中执行以下命令,测试5432端口的连通性:

# 使用telnet测试
telnet my-app-postgresql.postgres.database.azure.com 5432
# 或使用nc命令
nc -zv my-app-postgresql.postgres.database.azure.com 5432

如果连接失败,需排查Azure网络安全组(NSG)、虚拟机本地防火墙或PostgreSQL防火墙规则的阻断问题。

4. 确认PostgreSQL账号配置

  • 确保用户名格式正确:Azure PostgreSQL要求用户名为username@servername格式,即myappusername@my-app-postgresql
  • 验证账号权限:myappusername需拥有myapp数据库的创建、修改权限
  • 直接用psql测试连接,确认账号密码有效性:
psql "host=my-app-postgresql.postgres.database.azure.com port=5432 dbname=myapp user=myappusername@my-app-postgresql password=mypass sslmode=require"

5. 重置脚本执行环境

  • 确保虚拟机已安装kubectl、helm等脚本依赖工具
  • 清空安装脚本的临时配置缓存,重新加载修正后的数据库配置参数后再执行./k8s-install-tb.sh

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 04:02:22