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

Spring Boot连接cPanel中PostgreSQL数据库的问题及配置求助

Spring Boot连接cPanel PostgreSQL问题解决方案

1. 获取cPanel服务器的PostgreSQL主机地址与端口

  • 登录cPanel面板,找到数据库板块下的PostgreSQL数据库入口
  • 进入后,页面会显示明确的连接信息:
    • 主机地址:一般是cPanel服务器的公网IP、绑定的域名,或服务商提供的专属数据库主机(如db.yourdomain.com)
    • 端口:PostgreSQL默认端口为5432,若服务商有自定义端口,会在连接信息中标注
  • 也可通过cPanel终端执行psql -U [你的数据库用户名] -h localhost -p 5432确认本地端口,远程端口通常与本地一致,除非防火墙做了端口转发

2. 配置PostgreSQL数据库接收Spring Boot连接

2.1 分配数据库用户权限

  • 在PostgreSQL数据库管理页面,找到目标数据库,点击添加用户到数据库
  • 为指定用户分配所需权限(生产环境按需分配,测试可直接勾选所有权限),确保用户拥有CONNECT、SELECT、INSERT等基础操作权限,保存设置

2.2 开启远程访问权限

  • 在cPanel的数据库板块找到PostgreSQL远程访问(部分服务商命名为远程数据库访问)
  • 输入Spring Boot应用所在服务器的公网IP,点击添加主机,允许该IP发起远程连接
  • 注意:生产环境禁止使用%允许所有IP访问,仅开放业务所需的特定IP

2.3 调整SSL连接设置

  • cPanel托管的PostgreSQL通常默认强制SSL连接,需根据需求配置:
    • 若要使用SSL连接,确保JDBC URL中包含sslmode=require参数
    • 若需关闭SSL(仅测试环境使用),需在cPanel的PostgreSQL配置中关闭强制SSL选项

3. Spring Boot连接cPanel PostgreSQL完整步骤

步骤1:收集数据库连接信息

从cPanel获取以下信息:数据库名称、主机地址、端口、数据库用户名、密码,以及是否强制SSL连接

步骤2:修正application.properties配置

针对你遇到的两个错误,调整JDBC URL参数:

  • 保留gssEncMode=disable解决GSS编码错误
  • 添加SSL参数解决SSL连接错误,示例配置如下:
spring.datasource.url=jdbc:postgresql://[你的主机地址]:[端口]/[数据库名]?gssEncMode=disable&sslmode=require
spring.datasource.username=[数据库用户名]
spring.datasource.password=[数据库密码]
spring.jpa.hibernate.ddl-auto=update
server.port=9080
spring.servlet.multipart.max-file-size=500KB
spring.servlet.multipart.max-request-size=500KB
spring.jackson.serialization.fail-on-empty-beans=false

如果服务商要求验证SSL证书,可添加sslrootcert=/path/to/ca-cert.pem参数,证书可从cPanel的PostgreSQL管理页面下载

步骤3:测试连接并排查问题

  • 启动Spring Boot应用,查看日志确认连接状态
  • 若仍报错,逐一排查:
    • 应用服务器IP是否已添加到cPanel的远程访问列表
    • 数据库用户是否拥有足够的连接和操作权限
    • cPanel服务器的5432端口是否在防火墙中开放(可联系服务商确认)
    • SSL参数是否符合服务商的具体要求

内容的提问来源于stack exchange,提问作者hally-mio

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 08:05:33